diff options
| author | 1999-12-17 22:47:04 +0000 | |
|---|---|---|
| committer | 1999-12-17 22:47:04 +0000 | |
| commit | ea78222a2a115d74cde302be80e2f0fcc211b02f (patch) | |
| tree | a3f03af6a668a91c6f7110181f1db111a5d25ac1 /sys/netinet/udp_usrreq.c | |
| parent | more fixes from markus (diff) | |
| download | wireguard-openbsd-ea78222a2a115d74cde302be80e2f0fcc211b02f.tar.xz wireguard-openbsd-ea78222a2a115d74cde302be80e2f0fcc211b02f.zip | |
do not accept IPv4 traffic by AF_INET6 socket. IPv4 mapped address is
bad for access controls.
(quickhack fix, need sysctl/setsockopt knob to enable this functionality)
Diffstat (limited to 'sys/netinet/udp_usrreq.c')
| -rw-r--r-- | sys/netinet/udp_usrreq.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/sys/netinet/udp_usrreq.c b/sys/netinet/udp_usrreq.c index a2d2d5a17bd..f5eeb674080 100644 --- a/sys/netinet/udp_usrreq.c +++ b/sys/netinet/udp_usrreq.c @@ -1,4 +1,4 @@ -/* $OpenBSD: udp_usrreq.c,v 1.30 1999/12/12 10:59:41 itojun Exp $ */ +/* $OpenBSD: udp_usrreq.c,v 1.31 1999/12/17 22:47:05 itojun Exp $ */ /* $NetBSD: udp_usrreq.c,v 1.28 1996/03/16 23:54:03 christos Exp $ */ /* @@ -409,6 +409,11 @@ udp_input(m, va_alist) if (inp->inp_laddr.s_addr != ip->ip_dst.s_addr) continue; + } else { +#ifdef INET6 + if (inp->inp_flags & INP_IPV6) + continue; /*XXX*/ +#endif } #ifdef INET6 if (ipv6) { @@ -424,6 +429,11 @@ udp_input(m, va_alist) ip->ip_src.s_addr || inp->inp_fport != uh->uh_sport) continue; + } else { +#ifdef INET6 + if (inp->inp_flags & INP_IPV6) + continue; /*XXX*/ +#endif } if (last != NULL) { |
