X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/0fc591e04206a133ac83b73774cf266fc0e435c0..2b4965f56167dfda7c60fc9db2d145698d948fd5:/print-pflog.c diff --git a/print-pflog.c b/print-pflog.c index 463cd18b..0cacabfc 100644 --- a/print-pflog.c +++ b/print-pflog.c @@ -21,21 +21,30 @@ #ifndef lint static const char rcsid[] _U_ = - "@(#) $Header: /tcpdump/master/tcpdump/print-pflog.c,v 1.12 2004-04-02 06:48:10 guy Exp $ (LBL)"; + "@(#) $Header: /tcpdump/master/tcpdump/print-pflog.c,v 1.16 2007-09-12 19:36:18 guy Exp $ (LBL)"; #endif #ifdef HAVE_CONFIG_H #include "config.h" #endif +#ifndef HAVE_NET_PFVAR_H +#error "No pf headers available" +#endif +#include +#include +#include +#include +#include + #include #include #include +#include "extract.h" #include "interface.h" #include "addrtoname.h" -#include "pf.h" static struct tok pf_reasons[] = { { 0, "0(match)" }, @@ -44,6 +53,15 @@ static struct tok pf_reasons[] = { { 3, "3(short)" }, { 4, "4(normalize)" }, { 5, "5(memory)" }, + { 6, "6(bad-timestamp)" }, + { 7, "7(congestion)" }, + { 8, "8(ip-option)" }, + { 9, "9(proto-cksum)" }, + { 10, "10(state-mismatch)" }, + { 11, "11(state-insert)" }, + { 12, "12(state-limit)" }, + { 13, "13(src-limit)" }, + { 14, "14(synproxy)" }, { 0, NULL } }; @@ -77,8 +95,8 @@ pflog_print(const struct pfloghdr *hdr) { u_int32_t rulenr, subrulenr; - rulenr = ntohl(hdr->rulenr); - subrulenr = ntohl(hdr->subrulenr); + rulenr = EXTRACT_32BITS(&hdr->rulenr); + subrulenr = EXTRACT_32BITS(&hdr->subrulenr); if (subrulenr == (u_int32_t)-1) printf("rule %u/", rulenr); else @@ -136,7 +154,7 @@ pflog_if_print(const struct pcap_pkthdr *h, register const u_char *p) #if OPENBSD_AF_INET != AF_INET case OPENBSD_AF_INET: /* XXX: read pcap files */ #endif - ip_print(p, length); + ip_print(gndo, p, length); break; #ifdef INET6 @@ -152,7 +170,7 @@ pflog_if_print(const struct pcap_pkthdr *h, register const u_char *p) /* address family not handled, print raw packet */ if (!eflag) pflog_print(hdr); - if (!xflag && !qflag) + if (!suppress_default_print) default_print(p, caplen); } @@ -161,3 +179,10 @@ trunc: printf("[|pflog]"); return (hdrlen); } + +/* + * Local Variables: + * c-style: whitesmith + * c-basic-offset: 8 + * End: + */