diff src/event/ngx_event_acceptex.c @ 5263:05ba5bce31e0

Core: extended ngx_sock_ntop() with socklen parameter. On Linux, sockaddr length is required to process unix socket addresses properly due to unnamed sockets (which don't have sun_path set at all) and abstract namespace sockets.
author Vladimir Homutov <vl@nginx.com>
date Thu, 11 Jul 2013 16:07:25 +0400
parents d620f497c50f
children 3d2d3e1cf427
line wrap: on
line diff
--- a/src/event/ngx_event_acceptex.c
+++ b/src/event/ngx_event_acceptex.c
@@ -68,7 +68,8 @@ ngx_event_acceptex(ngx_event_t *rev)
             return;
         }
 
-        c->addr_text.len = ngx_sock_ntop(c->sockaddr, c->addr_text.data,
+        c->addr_text.len = ngx_sock_ntop(c->sockaddr, c->socklen,
+                                         c->addr_text.data,
                                          ls->addr_text_max_len, 0);
         if (c->addr_text.len == 0) {
             /* TODO: close socket */