[PATCH 3 of 3] Stream: ngx_stream_pass_module

2023-11-10 Thread Roman Arutyunyan
# HG changeset patch # User Roman Arutyunyan # Date 1699543504 -14400 # Thu Nov 09 19:25:04 2023 +0400 # Node ID 3cab85fe55272835674b7f1c296796955256d019 # Parent 1d3464283405a4d8ac54caae9bf1815c723f04c5 Stream: ngx_stream_pass_module. The module allows to pass connections from Stream to ot

[PATCH 1 of 3] Stream: socket peek in preread phase

2023-11-10 Thread Roman Arutyunyan
# HG changeset patch # User Roman Arutyunyan # Date 1699456644 -14400 # Wed Nov 08 19:17:24 2023 +0400 # Node ID 966331bb4936888ef2f034aa2700c130514d0b57 # Parent 7ec761f0365f418511e30b82e9adf80bc56681df Stream: socket peek in preread phase. Previously, preread buffer was always read out fr

[PATCH 2 of 3] Stream: virtual servers

2023-11-10 Thread Roman Arutyunyan
# HG changeset patch # User Roman Arutyunyan # Date 1699035295 -14400 # Fri Nov 03 22:14:55 2023 +0400 # Node ID 1d3464283405a4d8ac54caae9bf1815c723f04c5 # Parent 966331bb4936888ef2f034aa2700c130514d0b57 Stream: virtual servers. Server name is taken either from ngx_stream_ssl_module or ngx_

[PATCH 0 of 3] Stream connection handling updates

2023-11-10 Thread Roman Arutyunyan
The patches introduce updates in Stream connection handling. - first patch implements peek mode for preread - second patch adds virtual servers support to Stream - third patch adds a "pass" directive which allows to jump from Stream to any other nginx listen -- Roman Arutyunyan

[PATCH 1 of 2] HTTP: uniform overflow checks in ngx_http_alloc_large_header_buffer

2023-11-10 Thread Vladimir Homutov via nginx-devel
If URI is not fully parsed yet, some pointers are not set. As a result, the calculation of "new + (ptr - old)" expression may overflow. In such a case, just avoid calculating it, as value will be set correctly later by the parser in any case. The issue was found by GCC undefined behaviour sanitize

[PATCH 0 of 2] [patch] some issues found by gcc undef sanitizer

2023-11-10 Thread Vladimir Homutov via nginx-devel
> As already noted off-list, this is certainly not the only field > which might be not yet set when > ngx_http_alloc_large_header_buffer() is called. From the patch > context as shown, at least r->method_end and r->uri_start might > not be set as well, leading to similar overflows. And certainly

[PATCH 2 of 2] HTTP: removed unused r->port_start

2023-11-10 Thread Vladimir Homutov via nginx-devel
It is no longer used since the refactoring in 8e5bf1bc87e2 (2008). src/http/ngx_http_request.c | 3 +-- src/http/ngx_http_request.h | 1 - 2 files changed, 1 insertions(+), 3 deletions(-) # HG changeset patch # User Vladimir Khomutov # Date 1699603821 -10800 # Fri Nov 10 11:10:21 2023