NLB-7196: Update R36 Directives. #166
Open
+2,967
−5
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Proposed changes
Manually created the config JSON files by comparing the directives, then used the generator to create the directives.gen.go files.
New Directives Introduced in R36
For Native OIDC Module
frontchannel_logout_uri - Enables front-channel logout
pkce - Enables Proof Key for Code Exchange (PKCE) for enhanced security
For Tunnel Module (Forward Proxy)
13 new directives for HTTP CONNECT tunnel/forward proxy functionality:
tunnel_pass - Configures tunnel upstream
tunnel_bind - Binds tunnel connection to specific address
tunnel_bind_dynamic - Enables dynamic binding for tunnel connections
tunnel_allow_upstream - Allows specific upstream addresses for tunneling
tunnel_buffer_size - Sets buffer size for tunnel connections
tunnel_connect_timeout - Sets timeout for tunnel connection establishment
tunnel_next_upstream - Defines conditions for trying next upstream server
tunnel_next_upstream_timeout - Sets timeout for next upstream attempts
tunnel_next_upstream_tries - Sets maximum number of upstream tries
tunnel_read_timeout - Sets read timeout for tunnel connections
tunnel_send_timeout - Sets send timeout for tunnel connections
tunnel_send_lowat - Sets low water mark for send operations
tunnel_socket_keepalive - Enables TCP keepalive for tunnel connections
For ngx_http_core_module
early_hints - Sends 103 Early Hints response
add_header_inherit - Controls add_header inheritance behavior
add_trailer_inherit - Controls add_trailer inheritance behavior
For ngx_http_map_module and ngx_stream_map_module
For SSL/TLS Modules (HTTP, Stream, Mail)
Dynamic request generation directives
proxy_request_dynamic - Enables dynamic request generation for proxy
fastcgi_request_dynamic - Enables dynamic request generation for FastCGI
scgi_request_dynamic - Enables dynamic request generation for SCGI
uwsgi_request_dynamic - Enables dynamic request generation for uWSGI
Dynamic binding directives
proxy_bind_dynamic - Enables dynamic binding for proxy (HTTP and Stream)
fastcgi_bind_dynamic - Enables dynamic binding for FastCGI
scgi_bind_dynamic - Enables dynamic binding for SCGI
uwsgi_bind_dynamic - Enables dynamic binding for uWSGI
memcached_bind_dynamic - Enables dynamic binding for Memcached
grpc_bind_dynamic - Enables dynamic binding for gRPC
Allow upstream directives
proxy_allow_upstream - Allows specific upstream addresses for proxy
fastcgi_allow_upstream - Allows specific upstream addresses for FastCGI
scgi_allow_upstream - Allows specific upstream addresses for SCGI
uwsgi_allow_upstream - Allows specific upstream addresses for uWSGI
memcached_allow_upstream - Allows specific upstream addresses for Memcached
grpc_allow_upstream - Allows specific upstream addresses for gRPC
Checklist
Before creating a PR, run through this checklist and mark each as complete.
CONTRIBUTINGdocumentREADME.md)