diff options
| author | ozaki-r <ozaki-r@NetBSD.org> | 2017-06-22 09:23:10 +0000 |
|---|---|---|
| committer | ozaki-r <ozaki-r@NetBSD.org> | 2017-06-22 09:23:10 +0000 |
| commit | bdbd79892cfd189d8d5e1dc9cd6af197d97fd7f5 (patch) | |
| tree | edeb6b7357edee99e763909f6a6f53b428131c80 /sys/netinet | |
| parent | a5ae03de787b86674954822417749f237975af0b (diff) | |
Fix in_lltable_match_prefix
The function has not been used but will be used soon.
Diffstat (limited to 'sys/netinet')
| -rw-r--r-- | sys/netinet/in.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sys/netinet/in.c b/sys/netinet/in.c index ba072c09ca3..2252ff26acf 100644 --- a/sys/netinet/in.c +++ b/sys/netinet/in.c @@ -1,4 +1,4 @@ -/* $NetBSD: in.c,v 1.203 2017/06/01 02:45:14 chs Exp $ */ +/* $NetBSD: in.c,v 1.204 2017/06/22 09:23:10 ozaki-r Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -91,7 +91,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: in.c,v 1.203 2017/06/01 02:45:14 chs Exp $"); +__KERNEL_RCSID(0, "$NetBSD: in.c,v 1.204 2017/06/22 09:23:10 ozaki-r Exp $"); #include "arp.h" @@ -1896,12 +1896,15 @@ in_lltable_match_prefix(const struct sockaddr *prefix, { const struct sockaddr_in *pfx = (const struct sockaddr_in *)prefix; const struct sockaddr_in *msk = (const struct sockaddr_in *)mask; + struct in_addr lle_addr; + + lle_addr.s_addr = ntohl(lle->r_l3addr.addr4.s_addr); /* * (flags & LLE_STATIC) means deleting all entries * including static ARP entries. */ - if (IN_ARE_MASKED_ADDR_EQUAL(lle->r_l3addr.addr4, pfx, msk) && + if (IN_ARE_MASKED_ADDR_EQUAL(lle_addr, pfx, msk) && ((flags & LLE_STATIC) || !(lle->la_flags & LLE_STATIC))) return (1); |
