summaryrefslogtreecommitdiffstats
path: root/contrib/ipfilter
diff options
context:
space:
mode:
authorglebius <glebius@FreeBSD.org>2015-02-19 23:14:35 +0000
committerglebius <glebius@FreeBSD.org>2015-02-19 23:14:35 +0000
commit896e3f467bb1988d34b0711c1ccc64990fab0ce7 (patch)
tree43df71d49cba69e78c90c11277f7ece5f384d161 /contrib/ipfilter
parent39824ae151569add2d6e3615fefa1fb17cead897 (diff)
downloadFreeBSD-src-896e3f467bb1988d34b0711c1ccc64990fab0ce7.zip
FreeBSD-src-896e3f467bb1988d34b0711c1ccc64990fab0ce7.tar.gz
The ipftest(1) is a program that emulates ipf(4) operation and tests packets
against rules. It definitely doesn't need to know about kernel internals, such as 'struct ifaddr'. What it does with ifaddr, is that it only takes ifa_addr member of it, and treats it as sockaddr, while it is only a pointer to sockaddr. Fortunately, sizeof(struct ifaddr) > sizeof(struct sockaddr_in6), so no problems arise. Fix that declaring a private struct ifaddr in ipftest(1) and stop including if_var.h. Sponsored by: Netflix Sponsored by: Nginx, Inc.
Diffstat (limited to 'contrib/ipfilter')
-rw-r--r--contrib/ipfilter/ip_fil.c3
-rw-r--r--contrib/ipfilter/ipf.h3
2 files changed, 3 insertions, 3 deletions
diff --git a/contrib/ipfilter/ip_fil.c b/contrib/ipfilter/ip_fil.c
index 9178bd3..03e4093 100644
--- a/contrib/ipfilter/ip_fil.c
+++ b/contrib/ipfilter/ip_fil.c
@@ -44,6 +44,9 @@ static int write_output __P((struct ifnet *, struct mbuf *,
# endif
#endif
+struct ifaddr {
+ struct sockaddr_storage ifa_addr;
+};
int
ipfattach(softc)
diff --git a/contrib/ipfilter/ipf.h b/contrib/ipfilter/ipf.h
index d4bd524..dfae008 100644
--- a/contrib/ipfilter/ipf.h
+++ b/contrib/ipfilter/ipf.h
@@ -43,9 +43,6 @@ struct file;
#include <sys/socket.h>
#include <net/if.h>
-#define _WANT_IFADDR
-#include <net/if_var.h>
-
#include <netinet/in.h>
#include <netinet/in_systm.h>
#include <netinet/ip.h>
OpenPOWER on IntegriCloud