? autom4te.cache Index: config.h.in =================================================================== RCS file: /tcpdump/master/libpcap/config.h.in,v retrieving revision 1.28 diff -u -r1.28 config.h.in --- config.h.in 15 Jun 2007 17:56:30 -0000 1.28 +++ config.h.in 3 Sep 2007 20:19:44 -0000 @@ -50,6 +50,9 @@ /* Define to 1 if you have the header file. */ #undef HAVE_MEMORY_H +/* Define to 1 if you have the header file. */ +#undef HAVE_NET_PFVAR_H + /* Define to 1 if you have the header file. */ #undef HAVE_NETINET_ETHER_H Index: configure =================================================================== RCS file: /tcpdump/master/libpcap/configure,v retrieving revision 1.77 diff -u -r1.77 configure --- configure 15 Jun 2007 17:56:30 -0000 1.77 +++ configure 3 Sep 2007 20:19:52 -0000 @@ -3669,6 +3669,69 @@ done +for ac_header in net/pfvar.h +do +as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` +echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 +if eval "test \"\${$as_ac_Header+set}\" = set"; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +#include + +#include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + eval "$as_ac_Header=yes" +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +eval "$as_ac_Header=no" +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +fi +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 +if test `eval echo '${'$as_ac_Header'}'` = yes; then + cat >>confdefs.h <<_ACEOF +#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + for ac_header in netinet/if_ether.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` Index: configure.in =================================================================== RCS file: /tcpdump/master/libpcap/configure.in,v retrieving revision 1.136 diff -u -r1.136 configure.in --- configure.in 15 Jun 2007 17:55:50 -0000 1.136 +++ configure.in 3 Sep 2007 20:19:53 -0000 @@ -27,6 +27,9 @@ dnl "AC_LBL_FIXINCLUDES" won't work on some platforms such as Solaris. dnl AC_CHECK_HEADERS(sys/ioccom.h sys/sockio.h limits.h paths.h) +AC_CHECK_HEADERS(net/pfvar.h, , , [#include +#include +#include ]) AC_CHECK_HEADERS(netinet/if_ether.h, , , [#include #include ]) if test "$ac_cv_header_netinet_if_ether_h" != yes; then Index: gencode.c =================================================================== RCS file: /tcpdump/master/libpcap/gencode.c,v retrieving revision 1.284 diff -u -r1.284 gencode.c --- gencode.c 22 Jun 2007 06:32:06 -0000 1.284 +++ gencode.c 3 Sep 2007 20:19:56 -0000 @@ -73,7 +73,12 @@ #include "ppp.h" #include "pcap/sll.h" #include "arcnet.h" -#include "pf.h" +#ifdef HAVE_NET_PFVAR_H +#include +#include +#include +#include +#endif #ifndef offsetof #define offsetof(s, e) ((size_t)&((s *)0)->e) #endif @@ -1175,12 +1180,13 @@ off_nl_nosnap = 44; /* XXX - what does it do with 802.3 packets? */ return; +#ifdef HAVE_NET_PFVAR_H case DLT_PFLOG: off_linktype = 0; - /* XXX read this from pf.h? */ off_nl = PFLOG_HDRLEN; off_nl_nosnap = PFLOG_HDRLEN; /* no 802.2 LLC */ return; +#endif case DLT_JUNIPER_MFR: case DLT_JUNIPER_MLFR: @@ -2441,6 +2447,7 @@ } return (gen_cmp(OR_LINK, 0, BPF_W, (bpf_int32)proto)); +#ifdef HAVE_NET_PFVAR_H case DLT_PFLOG: /* * af field is host byte order in contrast to the rest of @@ -2458,6 +2465,7 @@ return gen_false(); /*NOTREACHED*/ break; +#endif /* HAVE_NET_PFVAR_H */ case DLT_ARCNET: case DLT_ARCNET_LINUX: @@ -6390,10 +6398,12 @@ } break; +#ifdef HAVE_NET_PFVAR_H case DLT_PFLOG: b0 = gen_cmp(OR_LINK, offsetof(struct pfloghdr, dir), BPF_B, (bpf_int32)((dir == 0) ? PF_IN : PF_OUT)); break; +#endif case DLT_PPP_PPPD: if (dir) { @@ -6442,6 +6452,7 @@ return (b0); } +#ifdef HAVE_NET_PFVAR_H /* PF firewall log matched interface */ struct block * gen_pf_ifname(const char *ifname) @@ -6549,6 +6560,55 @@ (bpf_int32)action); return (b0); } +#else /* !HAVE_NET_PFVAR_H */ +struct block * +gen_pf_rnr(int rnr) +{ + bpf_error("compiled without pf support"); + /* NOTREACHED */ + return (NULL); +} + +struct block * +gen_pf_ruleset(char *ruleset) +{ + bpf_error("compiled without pf support"); + /* NOTREACHED */ + return (NULL); +} + +struct block * +gen_pf_rnr(int rnr) +{ + bpf_error("compiled without pf support"); + /* NOTREACHED */ + return (NULL); +} + +struct block * +gen_pf_srnr(int srnr) +{ + bpf_error("compiled without pf support"); + /* NOTREACHED */ + return (NULL); +} + +struct block * +gen_pf_reason(int reason) +{ + bpf_error("compiled without pf support"); + /* NOTREACHED */ + return (NULL); +} + +struct block * +gen_pf_action(int action) +{ + bpf_error("compiled without pf support"); + /* NOTREACHED */ + return (NULL); +} +#endif /* HAVE_NET_PFVAR_H */ /* IEEE 802.11 wireless header */ struct block * Index: grammar.y =================================================================== RCS file: /tcpdump/master/libpcap/grammar.y,v retrieving revision 1.97 diff -u -r1.97 grammar.y --- grammar.y 11 Jun 2007 10:04:25 -0000 1.97 +++ grammar.y 3 Sep 2007 20:19:56 -0000 @@ -52,7 +52,11 @@ #include "pcap-int.h" #include "gencode.h" -#include "pf.h" +#ifdef HAVE_NET_PFVAR_H +#include +#include +#include +#endif #include "ieee80211.h" #include