Lines 783-789
Link Here
|
783 |
} |
783 |
} |
784 |
|
784 |
|
785 |
#ifdef INET |
785 |
#ifdef INET |
786 |
laddr.s_addr = INADDR_ANY; |
786 |
laddr.s_addr = INADDR_ANY; /* will be used by ipv6 branch later too */ |
787 |
if ((inp->inp_vflag & (INP_IPV4|INP_IPV6)) == INP_IPV4) { |
787 |
if ((inp->inp_vflag & (INP_IPV4|INP_IPV6)) == INP_IPV4) { |
788 |
if (lsa != NULL) |
788 |
if (lsa != NULL) |
789 |
laddr = ((struct sockaddr_in *)lsa)->sin_addr; |
789 |
laddr = ((struct sockaddr_in *)lsa)->sin_addr; |
Lines 834-849
Link Here
|
834 |
#endif |
834 |
#endif |
835 |
} else { |
835 |
} else { |
836 |
#ifdef INET6 |
836 |
#ifdef INET6 |
837 |
if ((inp->inp_vflag & INP_IPV6) != 0) |
837 |
if ((inp->inp_vflag & INP_IPV6) != 0) { |
838 |
tmpinp = in6_pcblookup_local(pcbinfo, |
838 |
tmpinp = in6_pcblookup_local(pcbinfo, |
839 |
&inp->in6p_laddr, lport, lookupflags, cred); |
839 |
&inp->in6p_laddr, lport, lookupflags, NULL); |
|
|
840 |
#ifdef INET |
841 |
if (tmpinp == NULL && |
842 |
(inp->inp_flags & IN6P_IPV6_V6ONLY) == 0 |
843 |
&& IN6_IS_ADDR_UNSPECIFIED(&inp->in6p_laddr)) |
844 |
tmpinp = in_pcblookup_local(pcbinfo, |
845 |
laddr, lport, lookupflags, NULL); |
846 |
#endif |
847 |
} |
840 |
#endif |
848 |
#endif |
841 |
#if defined(INET) && defined(INET6) |
849 |
#if defined(INET) && defined(INET6) |
842 |
else |
850 |
else |
843 |
#endif |
851 |
#endif |
844 |
#ifdef INET |
852 |
#ifdef INET |
845 |
tmpinp = in_pcblookup_local(pcbinfo, laddr, |
853 |
tmpinp = in_pcblookup_local(pcbinfo, laddr, |
846 |
lport, lookupflags, cred); |
854 |
lport, lookupflags, NULL); |
847 |
#endif |
855 |
#endif |
848 |
} |
856 |
} |
849 |
} while (tmpinp != NULL); |
857 |
} while (tmpinp != NULL); |