summaryrefslogtreecommitdiff
path: root/www/nginx-devel/files/extra-patch-lua-nginx-module
diff options
context:
space:
mode:
authorSergey A. Osokin <osa@FreeBSD.org>2023-01-19 12:09:00 -0500
committerSergey A. Osokin <osa@FreeBSD.org>2023-01-19 12:10:27 -0500
commita540b918b786e512989ba5c096d343753cc88b42 (patch)
tree8e627f8a4c521750e95e27b9f07f78836dd3c167 /www/nginx-devel/files/extra-patch-lua-nginx-module
parentcleanup: Remove expired ports: (diff)
www/nginx-devel: update third-party lua module 0.10.22 -> 0.10.23rc1
Remove the upstreamed patch. Bump PORTREVISION.
Diffstat (limited to '')
-rw-r--r--www/nginx-devel/files/extra-patch-lua-nginx-module167
1 files changed, 0 insertions, 167 deletions
diff --git a/www/nginx-devel/files/extra-patch-lua-nginx-module b/www/nginx-devel/files/extra-patch-lua-nginx-module
deleted file mode 100644
index 46c7b291c1f2..000000000000
--- a/www/nginx-devel/files/extra-patch-lua-nginx-module
+++ /dev/null
@@ -1,167 +0,0 @@
-From b6d167cf1a93c0c885c28db5a439f2404874cb26 Mon Sep 17 00:00:00 2001
-From: Hiroaki Nakamura <hnakamur@gmail.com>
-Date: Tue, 28 Jun 2022 14:37:24 +0900
-Subject: [PATCH] bugfix: update handling of multiple headers changed in nginx
- 1.23.0 (#2063)
-
----
- src/ngx_http_lua_headers_in.c | 46 ++++++++++++++++++++++++
- src/ngx_http_lua_headers_out.c | 64 ++++++++++++++++++++++++++++++++++
- 2 files changed, 110 insertions(+)
-
-diff --git a/../lua-nginx-module-0.10.22/src/ngx_http_lua_headers_in.c b/src/ngx_http_lua_headers_in.c
-index a55d9cac7..440548140 100644
---- a/../lua-nginx-module-0.10.22/src/ngx_http_lua_headers_in.c
-+++ b/../lua-nginx-module-0.10.22/src/ngx_http_lua_headers_in.c
-@@ -152,9 +152,15 @@ static ngx_http_lua_set_header_t ngx_http_lua_set_handlers[] = {
- ngx_http_set_builtin_header },
- #endif
-
-+#if defined(nginx_version) && nginx_version >= 1023000
-+ { ngx_string("Cookie"),
-+ offsetof(ngx_http_headers_in_t, cookie),
-+ ngx_http_set_builtin_multi_header },
-+#else
- { ngx_string("Cookie"),
- offsetof(ngx_http_headers_in_t, cookies),
- ngx_http_set_builtin_multi_header },
-+#endif
-
- { ngx_null_string, 0, ngx_http_set_header }
- };
-@@ -580,6 +586,45 @@ static ngx_int_t
- ngx_http_set_builtin_multi_header(ngx_http_request_t *r,
- ngx_http_lua_header_val_t *hv, ngx_str_t *value)
- {
-+#if defined(nginx_version) && nginx_version >= 1023000
-+ ngx_table_elt_t **headers, **ph, *h;
-+ int nelts;
-+
-+ headers = (ngx_table_elt_t **) ((char *) &r->headers_in + hv->offset);
-+
-+ if (!hv->no_override && *headers != NULL) {
-+ nelts = 0;
-+ for (h = *headers; h; h = h->next) {
-+ nelts++;
-+ }
-+
-+ *headers = NULL;
-+
-+ dd("clear multi-value headers: %d", nelts);
-+ }
-+
-+ if (ngx_http_set_header_helper(r, hv, value, &h) == NGX_ERROR) {
-+ return NGX_ERROR;
-+ }
-+
-+ if (value->len == 0) {
-+ return NGX_OK;
-+ }
-+
-+ dd("new multi-value header: %p", h);
-+
-+ if (*headers) {
-+ for (ph = headers; *ph; ph = &(*ph)->next) { /* void */ }
-+ *ph = h;
-+
-+ } else {
-+ *headers = h;
-+ }
-+
-+ h->next = NULL;
-+
-+ return NGX_OK;
-+#else
- ngx_array_t *headers;
- ngx_table_elt_t **v, *h;
-
-@@ -626,6 +671,7 @@ ngx_http_set_builtin_multi_header(ngx_http_request_t *r,
-
- *v = h;
- return NGX_OK;
-+#endif
- }
-
-
-diff --git a/../lua-nginx-module-0.10.22/src/ngx_http_lua_headers_out.c b/src/ngx_http_lua_headers_out.c
-index 6e9f9c19a..571723d9a 100644
---- a/../lua-nginx-module-0.10.22/src/ngx_http_lua_headers_out.c
-+++ b/../lua-nginx-module-0.10.22/src/ngx_http_lua_headers_out.c
-@@ -311,6 +311,69 @@ static ngx_int_t
- ngx_http_set_builtin_multi_header(ngx_http_request_t *r,
- ngx_http_lua_header_val_t *hv, ngx_str_t *value)
- {
-+#if defined(nginx_version) && nginx_version >= 1023000
-+ ngx_table_elt_t **headers, *h, *ho, **ph;
-+
-+ headers = (ngx_table_elt_t **) ((char *) &r->headers_out + hv->offset);
-+
-+ if (hv->no_override) {
-+ for (h = *headers; h; h = h->next) {
-+ if (!h->hash) {
-+ h->value = *value;
-+ h->hash = hv->hash;
-+ return NGX_OK;
-+ }
-+ }
-+
-+ goto create;
-+ }
-+
-+ /* override old values (if any) */
-+
-+ if (*headers) {
-+ for (h = (*headers)->next; h; h = h->next) {
-+ h->hash = 0;
-+ h->value.len = 0;
-+ }
-+
-+ h = *headers;
-+
-+ h->value = *value;
-+
-+ if (value->len == 0) {
-+ h->hash = 0;
-+
-+ } else {
-+ h->hash = hv->hash;
-+ }
-+
-+ return NGX_OK;
-+ }
-+
-+create:
-+
-+ for (ph = headers; *ph; ph = &(*ph)->next) { /* void */ }
-+
-+ ho = ngx_list_push(&r->headers_out.headers);
-+ if (ho == NULL) {
-+ return NGX_ERROR;
-+ }
-+
-+ ho->value = *value;
-+
-+ if (value->len == 0) {
-+ ho->hash = 0;
-+
-+ } else {
-+ ho->hash = hv->hash;
-+ }
-+
-+ ho->key = hv->key;
-+ ho->next = NULL;
-+ *ph = ho;
-+
-+ return NGX_OK;
-+#else
- ngx_array_t *pa;
- ngx_table_elt_t *ho, **ph;
- ngx_uint_t i;
-@@ -384,6 +447,7 @@ ngx_http_set_builtin_multi_header(ngx_http_request_t *r,
- *ph = ho;
-
- return NGX_OK;
-+#endif
- }
-
-