summaryrefslogtreecommitdiffhomepage
path: root/auto/modules
diff options
context:
space:
mode:
authorVladimir Homutov <vl@nginx.com>2020-12-25 15:01:15 +0300
committerVladimir Homutov <vl@nginx.com>2020-12-25 15:01:15 +0300
commitc4f31ccca174ff617a594b49ef255354e979b72d (patch)
treed2ade5c91b17e009585c2b329823708e1ce91f76 /auto/modules
parentb20b58ca7d1323664c5e8f91231ade0edf0d0f31 (diff)
downloadnginx-c4f31ccca174ff617a594b49ef255354e979b72d.tar.gz
nginx-c4f31ccca174ff617a594b49ef255354e979b72d.tar.bz2
QUIC: ngx_quic_bpf module.
The quic kernel bpf helper inspects packet payload for DCID, extracts key and routes the packet into socket matching the key. Due to reuseport feature, each worker owns a personal socket, which is identified by the same key, used to create DCID. BPF objects are locked in RAM and are subject to RLIMIT_MEMLOCK. The "ulimit -l" command may be used to setup proper limits, if maps cannot be created with EPERM or updated with ETOOLONG.
Diffstat (limited to 'auto/modules')
-rw-r--r--auto/modules16
1 files changed, 16 insertions, 0 deletions
diff --git a/auto/modules b/auto/modules
index 299e245ef..b3a697e71 100644
--- a/auto/modules
+++ b/auto/modules
@@ -1345,6 +1345,22 @@ if [ $USE_OPENSSL$USE_OPENSSL_QUIC = YESYES ]; then
ngx_module_order=
. auto/module
+
+ if [ $NGX_QUIC_BPF$BPF_FOUND$SO_COOKIE_FOUND = YESYESYES ]; then
+ ngx_module_type=CORE
+ ngx_module_name=ngx_quic_bpf_module
+ ngx_module_incs=
+ ngx_module_deps=
+ ngx_module_srcs="src/event/quic/ngx_event_quic_bpf.c \
+ src/event/quic/ngx_event_quic_bpf_code.c"
+ ngx_module_libs=
+ ngx_module_link=YES
+ ngx_module_order=
+
+ . auto/module
+
+ have=NGX_QUIC_BPF . auto/have
+ fi
fi