View | Details | Raw Unified | Return to bug 54047
Collapse All | Expand All

(-)network_io/unix/sockaddr.c (-2 / +2 lines)
Lines 1028-1034 Link Here
1028
    /* XXX This line will segv on Win32 build with APR_HAVE_IPV6,
1028
    /* XXX This line will segv on Win32 build with APR_HAVE_IPV6,
1029
     * but without the IPV6 drivers installed.
1029
     * but without the IPV6 drivers installed.
1030
     */
1030
     */
1031
    if (sa->sa.sin.sin_family == AF_INET) {
1031
    if (sa->family == AF_INET) {
1032
        if (ipsub->family == AF_INET &&
1032
        if (ipsub->family == AF_INET &&
1033
            ((sa->sa.sin.sin_addr.s_addr & ipsub->mask[0]) == ipsub->sub[0])) {
1033
            ((sa->sa.sin.sin_addr.s_addr & ipsub->mask[0]) == ipsub->sub[0])) {
1034
            return 1;
1034
            return 1;
Lines 1040-1046 Link Here
1040
            return 1;
1040
            return 1;
1041
        }
1041
        }
1042
    }
1042
    }
1043
    else {
1043
    else if (sa->family == AF_INET6 && ipsub->family == AF_INET6) {
1044
        apr_uint32_t *addr = (apr_uint32_t *)sa->ipaddr_ptr;
1044
        apr_uint32_t *addr = (apr_uint32_t *)sa->ipaddr_ptr;
1045
1045
1046
        if ((addr[0] & ipsub->mask[0]) == ipsub->sub[0] &&
1046
        if ((addr[0] & ipsub->mask[0]) == ipsub->sub[0] &&
(-)test/testipsub.c (+1 lines)
Lines 119-124 Link Here
119
        ,{"127",              NULL,            APR_INET,  "127.0.0.1",           "10.1.2.3"}
119
        ,{"127",              NULL,            APR_INET,  "127.0.0.1",           "10.1.2.3"}
120
        ,{"127.0.0.1",        "8",             APR_INET,  "127.0.0.1",           "10.1.2.3"}
120
        ,{"127.0.0.1",        "8",             APR_INET,  "127.0.0.1",           "10.1.2.3"}
121
#if APR_HAVE_IPV6
121
#if APR_HAVE_IPV6
122
        ,{"38.0.0.0",         "8",             APR_INET6, "::ffff:38.1.1.1",     "2600::1"} /* PR 54047 */
122
        ,{"fe80::",           "8",             APR_INET6, "fe80::1",             "ff01::1"}
123
        ,{"fe80::",           "8",             APR_INET6, "fe80::1",             "ff01::1"}
123
        ,{"ff01::",           "8",             APR_INET6, "ff01::1",             "fe80::1"}
124
        ,{"ff01::",           "8",             APR_INET6, "ff01::1",             "fe80::1"}
124
        ,{"3FFE:8160::",      "28",            APR_INET6, "3ffE:816e:abcd:1234::1", "3ffe:8170::1"}
125
        ,{"3FFE:8160::",      "28",            APR_INET6, "3ffE:816e:abcd:1234::1", "3ffe:8170::1"}

Return to bug 54047