Commit 2b535457 authored by Poul-Henning Kamp's avatar Poul-Henning Kamp

Use struct sockaddr_storage instead of our own homegrown hack.


git-svn-id: http://www.varnish-cache.org/svn/trunk/varnish-cache@1396 d4fa192b-c00b-0410-8231-f00ffab90ce4
parent 69a403c5
...@@ -256,9 +256,9 @@ struct sess { ...@@ -256,9 +256,9 @@ struct sess {
struct worker *wrk; struct worker *wrk;
unsigned sockaddrlen; unsigned sockaddrlen;
struct sockaddr sockaddr[2]; struct sockaddr_storage sockaddr[1];
unsigned mysockaddrlen; unsigned mysockaddrlen;
struct sockaddr mysockaddr[2]; struct sockaddr_storage mysockaddr[1];
/* formatted ascii client address */ /* formatted ascii client address */
char addr[TCP_ADDRBUFSIZE]; char addr[TCP_ADDRBUFSIZE];
......
...@@ -113,7 +113,7 @@ void ...@@ -113,7 +113,7 @@ void
VCA_Prep(struct sess *sp) VCA_Prep(struct sess *sp)
{ {
TCP_name(sp->sockaddr, sp->sockaddrlen, TCP_name((struct sockaddr *)sp->sockaddr, sp->sockaddrlen,
sp->addr, sizeof sp->addr, sp->port, sizeof sp->port); sp->addr, sizeof sp->addr, sp->port, sizeof sp->port);
VSL(SLT_SessionOpen, sp->fd, "%s %s", sp->addr, sp->port); VSL(SLT_SessionOpen, sp->fd, "%s %s", sp->addr, sp->port);
sp->acct.first = sp->t_open.tv_sec; sp->acct.first = sp->t_open.tv_sec;
......
...@@ -256,7 +256,7 @@ VREQ(proto, HTTP_HDR_PROTO) ...@@ -256,7 +256,7 @@ VREQ(proto, HTTP_HDR_PROTO)
struct sockaddr * struct sockaddr *
VRT_r_client_ip(struct sess *sp) VRT_r_client_ip(struct sess *sp)
{ {
return (sp->sockaddr); return ((struct sockaddr *)sp->sockaddr);
} }
struct sockaddr * struct sockaddr *
...@@ -266,9 +266,10 @@ VRT_r_server_ip(struct sess *sp) ...@@ -266,9 +266,10 @@ VRT_r_server_ip(struct sess *sp)
if (sp->mysockaddrlen == 0) { if (sp->mysockaddrlen == 0) {
l = sizeof sp->mysockaddr; l = sizeof sp->mysockaddr;
AZ(getsockname(sp->fd, sp->mysockaddr, &l)); AZ(getsockname(sp->fd,
(struct sockaddr*)sp->mysockaddr, &l));
sp->mysockaddrlen = l; sp->mysockaddrlen = l;
} }
return (sp->mysockaddr); return ((struct sockaddr*)sp->mysockaddr);
} }
...@@ -104,7 +104,7 @@ VRT_acl_match(struct sess *sp, struct sockaddr *sa, const char *acln, struct vrt ...@@ -104,7 +104,7 @@ VRT_acl_match(struct sess *sp, struct sockaddr *sa, const char *acln, struct vrt
for (a1 = ap->priv; a1 != NULL; a1 = a1->ai_next) { for (a1 = ap->priv; a1 != NULL; a1 = a1->ai_next) {
/* only match the right family */ /* only match the right family */
if (a1->ai_family != sp->sockaddr->sa_family) if (a1->ai_family != sp->sockaddr->ss_family)
continue; continue;
if (a1->ai_family == AF_INET) { if (a1->ai_family == AF_INET) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment