diff options
| author | Sergey A. Osokin <osa@FreeBSD.org> | 2011-08-10 16:22:58 +0000 |
|---|---|---|
| committer | Sergey A. Osokin <osa@FreeBSD.org> | 2011-08-10 16:22:58 +0000 |
| commit | 9e88578bd12cecf4b30e223185a12bcb6217034f (patch) | |
| tree | 60b9d855a2cb2d1f0522c74e61737184e49e33fa /www/nginx-devel/files | |
| parent | Remove some expired ports (diff) | |
Update from 3.0.7 to 3.0.8:
1) www/rubygem-passenger;
2) passenger support for www/nginx and www/nginx-devel;
Also add patch for fix NULL pointer crash that occurs when
HTTP 1.0 Host header isn't given, obtained from passenger's
upstream.
Approved by: maintainer [1]
Diffstat (limited to 'www/nginx-devel/files')
| -rw-r--r-- | www/nginx-devel/files/extra-patch-passenger::build::nginx.rb | 4 | ||||
| -rw-r--r-- | www/nginx-devel/files/extra-patch-passenger::ext::nginx::ContentHandler.c | 54 |
2 files changed, 56 insertions, 2 deletions
diff --git a/www/nginx-devel/files/extra-patch-passenger::build::nginx.rb b/www/nginx-devel/files/extra-patch-passenger::build::nginx.rb index fc556de2dee6..f6b0bb80b97a 100644 --- a/www/nginx-devel/files/extra-patch-passenger::build::nginx.rb +++ b/www/nginx-devel/files/extra-patch-passenger::build::nginx.rb @@ -1,5 +1,5 @@ ---- ../passenger-3.0.7/build/nginx.rb.orig 2010-12-07 13:57:32.000000000 +0300 -+++ ../passenger-3.0.7/build/nginx.rb 2010-12-07 13:58:13.000000000 +0300 +--- ../passenger-3.0.8/build/nginx.rb.orig 2010-12-07 13:57:32.000000000 +0300 ++++ ../passenger-3.0.8/build/nginx.rb 2010-12-07 13:58:13.000000000 +0300 @@ -23,10 +23,7 @@ desc "Build Nginx helper agent" diff --git a/www/nginx-devel/files/extra-patch-passenger::ext::nginx::ContentHandler.c b/www/nginx-devel/files/extra-patch-passenger::ext::nginx::ContentHandler.c new file mode 100644 index 000000000000..b71bd650bbb9 --- /dev/null +++ b/www/nginx-devel/files/extra-patch-passenger::ext::nginx::ContentHandler.c @@ -0,0 +1,54 @@ +--- ../passenger-3.0.8/ext/nginx/ContentHandler.c.orig 2011-08-10 10:35:24.000000000 +0400 ++++ ../passenger-3.0.8/ext/nginx/ContentHandler.c 2011-08-10 10:36:35.000000000 +0400 +@@ -336,6 +336,7 @@ + ngx_table_elt_t *header; + ngx_http_script_code_pt code; + ngx_http_script_engine_t e, le; ++ ngx_http_core_srv_conf_t *cscf; + passenger_loc_conf_t *slcf; + passenger_main_conf_t *main_conf; + passenger_context_t *context; +@@ -344,6 +345,7 @@ + ngx_http_ssl_srv_conf_t *ssl_conf; + #endif + ++ cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module); + slcf = ngx_http_get_module_loc_conf(r, ngx_http_passenger_module); + main_conf = &passenger_main_conf; + context = ngx_http_get_module_ctx(r, ngx_http_passenger_module); +@@ -415,11 +417,15 @@ + } + + /* SERVER_NAME; must be equal to HTTP_HOST without the port part */ +- tmp = memchr(r->headers_in.host->value.data, ':', r->headers_in.host->value.len); +- if (tmp == NULL) { +- server_name_len = r->headers_in.host->value.len; ++ if (r->headers_in.host != NULL) { ++ tmp = memchr(r->headers_in.host->value.data, ':', r->headers_in.host->value.len); ++ if (tmp == NULL) { ++ server_name_len = r->headers_in.host->value.len; ++ } else { ++ server_name_len = (int) ((const u_char *) tmp - r->headers_in.host->value.data); ++ } + } else { +- server_name_len = (int) ((const u_char *) tmp - r->headers_in.host->value.data); ++ server_name_len = cscf->server_name.len; + } + len += sizeof("SERVER_NAME") + server_name_len + 1; + +@@ -650,8 +656,13 @@ + + /* SERVER_NAME */ + b->last = ngx_copy(b->last, "SERVER_NAME", sizeof("SERVER_NAME")); +- b->last = ngx_copy(b->last, r->headers_in.host->value.data, +- server_name_len); ++ if (r->headers_in.host != NULL) { ++ b->last = ngx_copy(b->last, r->headers_in.host->value.data, ++ server_name_len); ++ } else { ++ b->last = ngx_copy(b->last, cscf->server_name.data, ++ server_name_len); ++ } + b->last = ngx_copy(b->last, "", 1); + + /* Various other HTTP headers. */ |
