X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/4189fb7df651e5742b15488d2f59dae5f526e82b..a9a7c86c7875a38358a9ff1f2a35e93febf6f41e:/print-pflog.c diff --git a/print-pflog.c b/print-pflog.c index 6cd004cc..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.13 2005-04-06 21:32:41 mcr 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 @@ -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); }