summaryrefslogtreecommitdiff
path: root/sys/netinet
diff options
context:
space:
mode:
authorAngelos D. Keromytis <angelos@cvs.openbsd.org>1998-03-19 21:21:45 +0000
committerAngelos D. Keromytis <angelos@cvs.openbsd.org>1998-03-19 21:21:45 +0000
commitd9933d2b22acde2f06ab03967717f9b1c8d74aec (patch)
tree880cb1c4949dc6d03de4751de194fc7a744e5745 /sys/netinet
parent7b48943ce6110371ac538ccefc64a5ed66697bb3 (diff)
This should fix some problems with the aliases.
Diffstat (limited to 'sys/netinet')
-rw-r--r--sys/netinet/in.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/netinet/in.c b/sys/netinet/in.c
index 7d8801a3e44..6589cc10a17 100644
--- a/sys/netinet/in.c
+++ b/sys/netinet/in.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: in.c,v 1.8 1998/02/28 03:39:56 angelos Exp $ */
+/* $OpenBSD: in.c,v 1.9 1998/03/19 21:21:44 angelos Exp $ */
/* $NetBSD: in.c,v 1.26 1996/02/13 23:41:39 christos Exp $ */
/*
@@ -461,8 +461,9 @@ in_broadcast(in, ifp)
for (ifa = ifn->if_addrlist.tqh_first; ifa;
ifa = ifa->ifa_list.tqe_next)
if (ifa->ifa_addr->sa_family == AF_INET &&
- (in.s_addr == ia->ia_broadaddr.sin_addr.s_addr ||
- in.s_addr == ia->ia_netbroadcast.s_addr ||
+ (((in.s_addr == ia->ia_broadaddr.sin_addr.s_addr ||
+ in.s_addr == ia->ia_netbroadcast.s_addr) &&
+ (ia->ia_subnetmask != 0xffffffff)) ||
/*
* Check for old-style (host 0) broadcast.
*/