]> err.no Git - varnish/commitdiff
Don't use sockaddr->sa_len, it was too advanced for POSIX people
authorphk <phk@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Wed, 9 May 2007 09:45:01 +0000 (09:45 +0000)
committerphk <phk@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Wed, 9 May 2007 09:45:01 +0000 (09:45 +0000)
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1393 d4fa192b-c00b-0410-8231-f00ffab90ce4

varnish-cache/bin/varnishd/cache.h
varnish-cache/bin/varnishd/cache_vrt.c

index 1b86bfc1787722d82dcfcf34b8f905ffd8967511..b91e7145bc70b53ca3361248d7b547f417f12c15 100644 (file)
@@ -257,6 +257,7 @@ struct sess {
 
        unsigned                sockaddrlen;
        struct sockaddr         sockaddr[2];
+       unsigned                mysockaddrlen;
        struct sockaddr         mysockaddr[2];
 
        /* formatted ascii client address */
index 46c101e9be034737ab7da018e44021d3073a88d8..dddfc358951aefb48846c153933920f9b1ead0c8 100644 (file)
@@ -264,10 +264,10 @@ VRT_r_server_ip(struct sess *sp)
 {
        socklen_t l;
 
-       if (sp->mysockaddr->sa_len == 0) {
+       if (sp->mysockaddrlen == 0) {
                l = sizeof sp->mysockaddr;
                AZ(getsockname(sp->fd, sp->mysockaddr, &l));
-               assert(l == sp->mysockaddr->sa_len);
+               sp->mysockaddrlen = l;
        }
 
        return (sp->mysockaddr);