summaryrefslogtreecommitdiff
path: root/sys/netinet/udp_usrreq.c
diff options
context:
space:
mode:
authorClaudio Jeker <claudio@cvs.openbsd.org>2011-04-28 09:56:28 +0000
committerClaudio Jeker <claudio@cvs.openbsd.org>2011-04-28 09:56:28 +0000
commit959bb9f6884c49637c3bcde1c528f737d6f881bd (patch)
tree6b60f6ed2c927369b9b628e1b106c709a243c7f7 /sys/netinet/udp_usrreq.c
parentd8e44e7cc59e0f8ed2759d99780e241c2d7d0277 (diff)
Make in_broadcast() rdomain aware. Mostly mechanical change.
This fixes the problem of binding sockets to broadcast IPs in other rdomains. OK henning@
Diffstat (limited to 'sys/netinet/udp_usrreq.c')
-rw-r--r--sys/netinet/udp_usrreq.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/netinet/udp_usrreq.c b/sys/netinet/udp_usrreq.c
index 42daf24c458..58e0a040ec1 100644
--- a/sys/netinet/udp_usrreq.c
+++ b/sys/netinet/udp_usrreq.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: udp_usrreq.c,v 1.141 2011/04/24 19:36:54 bluhm Exp $ */
+/* $OpenBSD: udp_usrreq.c,v 1.142 2011/04/28 09:56:27 claudio Exp $ */
/* $NetBSD: udp_usrreq.c,v 1.28 1996/03/16 23:54:03 christos Exp $ */
/*
@@ -412,10 +412,11 @@ udp_input(struct mbuf *m, ...)
#ifdef INET6
if ((ip6 && IN6_IS_ADDR_MULTICAST(&ip6->ip6_dst)) ||
(ip && IN_MULTICAST(ip->ip_dst.s_addr)) ||
- (ip && in_broadcast(ip->ip_dst, m->m_pkthdr.rcvif))) {
+ (ip && in_broadcast(ip->ip_dst, m->m_pkthdr.rcvif,
+ m->m_pkthdr.rdomain))) {
#else /* INET6 */
if (IN_MULTICAST(ip->ip_dst.s_addr) ||
- in_broadcast(ip->ip_dst, m->m_pkthdr.rcvif)) {
+ in_broadcast(ip->ip_dst, m->m_pkthdr.rcvif, m->m_pkthdr.rdomain)) {
#endif /* INET6 */
struct inpcb *last;
/*