]> The Tcpdump Group git mirrors - tcpdump/blobdiff - print.c
Merge pull request #703 from nmap/update-gitignore
[tcpdump] / print.c
diff --git a/print.c b/print.c
index fd95b5125b4c1d7abf26cd662cb603429eedd8a7..9ee88eb1758d1206b256043c8b0c47dd7e388f26 100644 (file)
--- a/print.c
+++ b/print.c
@@ -37,6 +37,9 @@
 #include "netdissect.h"
 #include "addrtoname.h"
 #include "print.h"
+#include "netdissect-alloc.h"
+
+#include "pcap-missing.h"
 
 struct printer {
        if_printer f;
@@ -63,11 +66,11 @@ static const struct printer printers[] = {
 #ifdef DLT_NETANALYZER_TRANSPARENT
        { netanalyzer_transparent_if_print, DLT_NETANALYZER_TRANSPARENT },
 #endif
-#if defined(DLT_NFLOG) && defined(HAVE_PCAP_NFLOG_H)
+#ifdef DLT_NFLOG
        { nflog_if_print,       DLT_NFLOG},
 #endif
 #ifdef DLT_CIP
-       { cip_if_print,         DLT_CIP },
+       { cip_if_print,         DLT_CIP },
 #endif
 #ifdef DLT_ATM_CLIP
        { cip_if_print,         DLT_ATM_CLIP },
@@ -82,7 +85,7 @@ static const struct printer printers[] = {
 #ifdef DLT_APPLE_IP_OVER_IEEE1394
        { ap1394_if_print,      DLT_APPLE_IP_OVER_IEEE1394 },
 #endif
-#if defined(DLT_BLUETOOTH_HCI_H4_WITH_PHDR) && defined(HAVE_PCAP_BLUETOOTH_H)
+#ifdef DLT_BLUETOOTH_HCI_H4_WITH_PHDR
        { bt_if_print,          DLT_BLUETOOTH_HCI_H4_WITH_PHDR},
 #endif
 #ifdef DLT_LANE8023
@@ -125,6 +128,9 @@ static const struct printer printers[] = {
 #ifdef DLT_LINUX_SLL
        { sll_if_print,         DLT_LINUX_SLL },
 #endif
+#ifdef DLT_LINUX_SLL2
+       { sll2_if_print,        DLT_LINUX_SLL2 },
+#endif
 #ifdef DLT_FR
        { fr_if_print,          DLT_FR },
 #endif
@@ -217,6 +223,12 @@ static const struct printer printers[] = {
 #endif
 #ifdef DLT_PPP_SERIAL
        { ppp_hdlc_if_print,    DLT_PPP_SERIAL },
+#endif
+#ifdef DLT_DSA_TAG_BRCM
+       { brcm_tag_if_print,    DLT_DSA_TAG_BRCM },
+#endif
+#ifdef DLT_DSA_TAG_BRCM_PREPEND
+       { brcm_tag_prepend_if_print, DLT_DSA_TAG_BRCM_PREPEND },
 #endif
        { NULL,                 0 },
 };
@@ -237,11 +249,9 @@ static int ndo_printf(netdissect_options *ndo,
                     PRINTFLIKE(2, 3);
 
 void
-init_print(netdissect_options *ndo, uint32_t localnet, uint32_t mask,
-          uint32_t timezone_offset)
+init_print(netdissect_options *ndo, uint32_t localnet, uint32_t mask)
 {
 
-       thiszone = timezone_offset;
        init_addrtoname(ndo, localnet, mask);
        init_checksum();
 }
@@ -316,11 +326,11 @@ pretty_print_packet(netdissect_options *ndo, const struct pcap_pkthdr *h,
        u_int hdrlen;
        int invalid_header = 0;
 
-       if(ndo->ndo_packet_number)
+       if (ndo->ndo_packet_number)
                ND_PRINT("%5u  ", packets_captured);
 
        /* Sanity checks on packet length / capture length */
-       if(h->caplen == 0) {
+       if (h->caplen == 0) {
                invalid_header = 1;
                ND_PRINT("[Invalid header: caplen==0");
        }
@@ -448,6 +458,7 @@ pretty_print_packet(netdissect_options *ndo, const struct pcap_pkthdr *h,
        }
 
        ND_PRINT("\n");
+       nd_free_all(ndo);
 }
 
 /*
@@ -466,7 +477,7 @@ ndo_error(netdissect_options *ndo, status_exit_codes_t status,
 {
        va_list ap;
 
-       if(ndo->program_name)
+       if (ndo->program_name)
                (void)fprintf(stderr, "%s: ", ndo->program_name);
        va_start(ap, fmt);
        (void)vfprintf(stderr, fmt, ap);
@@ -487,7 +498,7 @@ ndo_warning(netdissect_options *ndo, const char *fmt, ...)
 {
        va_list ap;
 
-       if(ndo->program_name)
+       if (ndo->program_name)
                (void)fprintf(stderr, "%s: ", ndo->program_name);
        (void)fprintf(stderr, "WARNING: ");
        va_start(ap, fmt);
@@ -524,9 +535,3 @@ ndo_set_function_pointers(netdissect_options *ndo)
        ndo->ndo_error=ndo_error;
        ndo->ndo_warning=ndo_warning;
 }
-/*
- * Local Variables:
- * c-style: whitesmith
- * c-basic-offset: 8
- * End:
- */