]> git.kaiwu.me - nginx.git/commit
The "multipath" parameter of the "listen" directive.
authorSergey Kandaurov <pluknet@nginx.com>
Thu, 16 Oct 2025 15:22:56 +0000 (15:22 +0000)
committerSergey Kandaurov <s.kandaurov@f5.com>
Wed, 18 Mar 2026 21:13:51 +0000 (01:13 +0400)
commit920dc099c130e0ea23eb36becd157a95901aa5a2
tree087aa0949e69c5196c325baa49f38603e7a8a1fc
parenta29476464cc86092135401bdcad91e4d38ac6b6d
The "multipath" parameter of the "listen" directive.

When configured, it enables Multipath TCP support on a listen socket.
As of now it works on Linux starting with Linux 5.6 and glibc 2.32,
where it is enabled with an IPPROTO_MPTCP socket(2) protocol.

To avoid EADDRINUSE errors in bind() and listen() when transitioning
between sockets with different protocols, SO_REUSEPORT is set on both
sockets.  See f7f1607bf for potential implications.

Based on previous work by Maxime Dourov and Anthony Doeraene.
13 files changed:
contrib/vim/syntax/nginx.vim
src/core/ngx_connection.c
src/core/ngx_connection.h
src/core/ngx_cycle.c
src/http/ngx_http.c
src/http/ngx_http_core_module.c
src/http/ngx_http_core_module.h
src/mail/ngx_mail.c
src/mail/ngx_mail.h
src/mail/ngx_mail_core_module.c
src/stream/ngx_stream.c
src/stream/ngx_stream.h
src/stream/ngx_stream_core_module.c