Nginx падает при server_name

Igor Sysoev is at rambler-co.ru
Thu Feb 12 19:37:03 MSK 2009


On Fri, Dec 12, 2008 at 12:42:44AM +0700, Sergey Serov wrote:

> Hello all,
> 
> После апргрейда до 0.7.24 обнаружилось следующее:
> 
> Если 
> server_name .abcd.net;
> то случается segfault:
> 
> 0x000000000043683d in ngx_http_find_virtual_server (r=0x640010, 
> host=0x6405c9 "www11.abcd.net", len=14) at src/http/ngx_http_request.c:1653
> 1653        r->srv_conf = cscf->ctx->srv_conf;
> 
> Если заменить на 
> server_name abcd.net *.abcd.net;
> То тогда все нормально.
> 
> Проблема только на одном домене. На других более длинных доменах все 
> нормально.

Прилагаемый патч должен помочь.


-- 
Игорь Сысоев
http://sysoev.ru
-------------- next part --------------
Index: src/core/ngx_hash.c
===================================================================
--- src/core/ngx_hash.c	(revision 1821)
+++ src/core/ngx_hash.c	(working copy)
@@ -589,7 +589,7 @@
                 wdc->value = names[n].value;
             }
 
-            name->value = (void *) ((uintptr_t) wdc | (dot ? 3 : 1));
+            name->value = (void *) ((uintptr_t) wdc | (dot ? 3 : 2));
 
         } else if (dot) {
             name->value = (void *) ((uintptr_t) name->value | 1);


More information about the nginx-ru mailing list