ngx_sock_ntop() takes family from sockaddr, remove duplicate field
diff --git a/src/core/ngx_connection.c b/src/core/ngx_connection.c
index 8274775..226dc1e 100644
--- a/src/core/ngx_connection.c
+++ b/src/core/ngx_connection.c
@@ -49,7 +49,6 @@
- ls->addr_text.data;
ls->fd = (ngx_socket_t) -1;
- ls->family = AF_INET;
ls->type = SOCK_STREAM;
ls->sockaddr = (struct sockaddr *) sin;
ls->socklen = sizeof(struct sockaddr_in);
@@ -113,9 +112,8 @@
return NGX_ERROR;
}
- ls[i].family = sin->sin_family;
- len = ngx_sock_ntop(ls[i].family, ls[i].sockaddr,
- ls[i].addr_text.data, NGX_INET_ADDRSTRLEN);
+ len = ngx_sock_ntop(ls[i].sockaddr, ls[i].addr_text.data,
+ NGX_INET_ADDRSTRLEN);
if (len == 0) {
return NGX_ERROR;
}
@@ -255,7 +253,7 @@
continue;
}
- s = ngx_socket(ls[i].family, ls[i].type, 0);
+ s = ngx_socket(ls[i].sockaddr->sa_family, ls[i].type, 0);
if (s == -1) {
ngx_log_error(NGX_LOG_EMERG, log, ngx_socket_errno,
diff --git a/src/core/ngx_connection.h b/src/core/ngx_connection.h
index a2ae690..573fb3c 100644
--- a/src/core/ngx_connection.h
+++ b/src/core/ngx_connection.h
@@ -23,7 +23,6 @@
size_t addr_text_max_len;
ngx_str_t addr_text;
- int family;
int type;
int backlog;
diff --git a/src/core/ngx_inet.c b/src/core/ngx_inet.c
index dc0a550..a22b2cc 100644
--- a/src/core/ngx_inet.c
+++ b/src/core/ngx_inet.c
@@ -56,12 +56,12 @@
/* AF_INET only */
size_t
-ngx_sock_ntop(int family, struct sockaddr *sa, u_char *text, size_t len)
+ngx_sock_ntop(struct sockaddr *sa, u_char *text, size_t len)
{
u_char *p;
struct sockaddr_in *sin;
- if (family == AF_INET) {
+ if (sa->sa_family == AF_INET) {
sin = (struct sockaddr_in *) sa;
p = (u_char *) &sin->sin_addr;
@@ -457,7 +457,7 @@
return NGX_ERROR;
}
- len = ngx_sock_ntop(AF_INET, (struct sockaddr *) sin, p, len);
+ len = ngx_sock_ntop((struct sockaddr *) sin, p, len);
u->addrs[i].name.len = ngx_sprintf(&p[len], ":%d", u->port) - p;
u->addrs[i].name.data = p;
diff --git a/src/core/ngx_inet.h b/src/core/ngx_inet.h
index 95ba30b..cbff8fd 100644
--- a/src/core/ngx_inet.h
+++ b/src/core/ngx_inet.h
@@ -63,7 +63,7 @@
in_addr_t ngx_inet_addr(u_char *text, size_t len);
-size_t ngx_sock_ntop(int family, struct sockaddr *sa, u_char *text, size_t len);
+size_t ngx_sock_ntop(struct sockaddr *sa, u_char *text, size_t len);
size_t ngx_inet_ntop(int family, void *addr, u_char *text, size_t len);
ngx_int_t ngx_ptocidr(ngx_str_t *text, void *cidr);
ngx_int_t ngx_parse_url(ngx_pool_t *pool, ngx_url_t *u);
diff --git a/src/event/ngx_event_accept.c b/src/event/ngx_event_accept.c
index e48da2a..39b6515 100644
--- a/src/event/ngx_event_accept.c
+++ b/src/event/ngx_event_accept.c
@@ -207,8 +207,7 @@
return;
}
- c->addr_text.len = ngx_sock_ntop(ls->family, c->sockaddr,
- c->addr_text.data,
+ c->addr_text.len = ngx_sock_ntop(c->sockaddr, c->addr_text.data,
ls->addr_text_max_len);
if (c->addr_text.len == 0) {
ngx_close_accepted_connection(c);
diff --git a/src/event/ngx_event_acceptex.c b/src/event/ngx_event_acceptex.c
index d2752aa..7b14839 100644
--- a/src/event/ngx_event_acceptex.c
+++ b/src/event/ngx_event_acceptex.c
@@ -65,8 +65,7 @@
return;
}
- c->addr_text.len = ngx_sock_ntop(c->listening->family, c->sockaddr,
- c->addr_text.data,
+ c->addr_text.len = ngx_sock_ntop(c->sockaddr, c->addr_text.data,
c->listening->addr_text_max_len);
if (c->addr_text.len == 0) {
/* TODO: close socket */
@@ -100,7 +99,7 @@
/* TODO: look up reused sockets */
- s = ngx_socket(ls->family, ls->type, 0);
+ s = ngx_socket(ls->sockaddr->sa_family, ls->type, 0);
ngx_log_debug1(NGX_LOG_DEBUG_EVENT, &ls->log, 0,
ngx_socket_n " s:%d", s);
diff --git a/src/http/ngx_http_core_module.c b/src/http/ngx_http_core_module.c
index 30b2c0c..754a788 100644
--- a/src/http/ngx_http_core_module.c
+++ b/src/http/ngx_http_core_module.c
@@ -1625,8 +1625,8 @@
return NGX_OK;
}
- s->len = ngx_inet_ntop(c->listening->family, &r->in_addr,
- s->data, NGX_INET_ADDRSTRLEN);
+ s->len = ngx_sock_ntop((struct sockaddr *) &sin, s->data,
+ NGX_INET_ADDRSTRLEN);
return NGX_OK;
}