]> The Tcpdump Group git mirrors - libpcap/commitdiff
Add a pcap/ipnet.h file with IPNET definitions; use the right AF_ values.
authorGuy Harris <[email protected]>
Wed, 6 Jan 2010 04:35:25 +0000 (20:35 -0800)
committerGuy Harris <[email protected]>
Wed, 6 Jan 2010 04:35:25 +0000 (20:35 -0800)
Makefile.in
gencode.c
pcap/bpf.h
pcap/ipnet.h [new file with mode: 0644]

index 993aa3c0d0d8a14a816749dc545c697bc3c0a9f4..53801c13641c15c9e4bc38d1d1af301ea1457bdb 100644 (file)
@@ -99,6 +99,7 @@ PUBHDR = \
        pcap-namedb.h \
        pcap/bpf.h \
        pcap/bluetooth.h \
+       pcap/ipnet.h \
        pcap/namedb.h \
        pcap/pcap.h \
        pcap/sll.h \
index 629ef5c7566ffd9386037c4458b4036a20071baa..b0abe00927c810fdc63a18fbaa94ecb3b96b13d6 100644 (file)
--- a/gencode.c
+++ b/gencode.c
@@ -74,6 +74,7 @@ static const char rcsid[] _U_ =
 #include "sunatmpos.h"
 #include "ppp.h"
 #include "pcap/sll.h"
+#include "pcap/ipnet.h"
 #include "arcnet.h"
 #ifdef HAVE_NET_PFVAR_H
 #include <sys/socket.h>
@@ -2021,16 +2022,18 @@ gen_ipnet_linktype(proto)
        register int proto;
 {
        switch (proto) {
+
        case ETHERTYPE_IP:
                return gen_cmp(OR_LINK, off_linktype, BPF_B,
-                   (bpf_int32)AF_INET);
+                   (bpf_int32)IPH_AF_INET);
                /* NOTREACHED */
 
        case ETHERTYPE_IPV6:
                return gen_cmp(OR_LINK, off_linktype, BPF_B,
-                   (bpf_int32)AF_INET6);
+                   (bpf_int32)IPH_AF_INET6);
                /* NOTREACHED */
-       default :
+
+       default:
                break;
        }
 
index 706ed2372ea7dc9f724c60452d4f633f07e6b7cd..eff892c42ccf0f4942af032d630624d2c07d4ed9 100644 (file)
@@ -960,12 +960,6 @@ struct bpf_version {
 #define DLT_IPV4                       228
 #define DLT_IPV6                       229
 
-/*
- * IPNET
- */
-#define        IPNET_OUTBOUND          1
-#define        IPNET_INBOUND           2
-
 /*
  * DLT and savefile link type values are split into a class and
  * a member of that class.  A class value of 0 indicates a regular
diff --git a/pcap/ipnet.h b/pcap/ipnet.h
new file mode 100644 (file)
index 0000000..5330847
--- /dev/null
@@ -0,0 +1,43 @@
+/*-
+ * Copyright (c) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997
+ *     The Regents of the University of California.  All rights reserved.
+ *
+ * This code is derived from the Stanford/CMU enet packet filter,
+ * (net/enet.c) distributed as part of 4.3BSD, and code contributed
+ * to Berkeley by Steven McCanne and Van Jacobson both of Lawrence
+ * Berkeley Laboratory.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ *    must display the following acknowledgement:
+ *      This product includes software developed by the University of
+ *      California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#define        IPH_AF_INET     2               /* Matches Solaris's AF_INET */
+#define        IPH_AF_INET6    26              /* Matches Solaris's AF_INET6 */
+
+#define        IPNET_OUTBOUND          1
+#define        IPNET_INBOUND           2