]> The Tcpdump Group git mirrors - tcpdump/blobdiff - print.c
Use nd_ types, add EXTRACT_ calls.
[tcpdump] / print.c
diff --git a/print.c b/print.c
index 41ca9cadf8e493fc53f373483ba5c5d76d3653a8..703d7ef2b619aa6ff0461017503bf808ae83174f 100644 (file)
--- a/print.c
+++ b/print.c
@@ -101,10 +101,10 @@ static const struct printer printers[] = {
 #endif
 #ifdef HAVE_PCAP_USB_H
 #ifdef DLT_USB_LINUX
-       { usb_linux_48_byte_print, DLT_USB_LINUX},
+       { usb_linux_48_byte_if_print, DLT_USB_LINUX},
 #endif /* DLT_USB_LINUX */
 #ifdef DLT_USB_LINUX_MMAPPED
-       { usb_linux_64_byte_print, DLT_USB_LINUX_MMAPPED},
+       { usb_linux_64_byte_if_print, DLT_USB_LINUX_MMAPPED},
 #endif /* DLT_USB_LINUX_MMAPPED */
 #endif /* HAVE_PCAP_USB_H */
 #ifdef DLT_SYMANTEC_FIREWALL
@@ -151,49 +151,49 @@ static const struct printer printers[] = {
        { ltalk_if_print,       DLT_LTALK },
 #endif
 #ifdef DLT_JUNIPER_ATM1
-       { juniper_atm1_print,   DLT_JUNIPER_ATM1 },
+       { juniper_atm1_if_print, DLT_JUNIPER_ATM1 },
 #endif
 #ifdef DLT_JUNIPER_ATM2
-       { juniper_atm2_print,   DLT_JUNIPER_ATM2 },
+       { juniper_atm2_if_print, DLT_JUNIPER_ATM2 },
 #endif
 #ifdef DLT_JUNIPER_MFR
-       { juniper_mfr_print,    DLT_JUNIPER_MFR },
+       { juniper_mfr_if_print, DLT_JUNIPER_MFR },
 #endif
 #ifdef DLT_JUNIPER_MLFR
-       { juniper_mlfr_print,   DLT_JUNIPER_MLFR },
+       { juniper_mlfr_if_print, DLT_JUNIPER_MLFR },
 #endif
 #ifdef DLT_JUNIPER_MLPPP
-       { juniper_mlppp_print,  DLT_JUNIPER_MLPPP },
+       { juniper_mlppp_if_print, DLT_JUNIPER_MLPPP },
 #endif
 #ifdef DLT_JUNIPER_PPPOE
-       { juniper_pppoe_print,  DLT_JUNIPER_PPPOE },
+       { juniper_pppoe_if_print, DLT_JUNIPER_PPPOE },
 #endif
 #ifdef DLT_JUNIPER_PPPOE_ATM
-       { juniper_pppoe_atm_print, DLT_JUNIPER_PPPOE_ATM },
+       { juniper_pppoe_atm_if_print, DLT_JUNIPER_PPPOE_ATM },
 #endif
 #ifdef DLT_JUNIPER_GGSN
-       { juniper_ggsn_print,   DLT_JUNIPER_GGSN },
+       { juniper_ggsn_if_print, DLT_JUNIPER_GGSN },
 #endif
 #ifdef DLT_JUNIPER_ES
-       { juniper_es_print,     DLT_JUNIPER_ES },
+       { juniper_es_if_print,  DLT_JUNIPER_ES },
 #endif
 #ifdef DLT_JUNIPER_MONITOR
-       { juniper_monitor_print, DLT_JUNIPER_MONITOR },
+       { juniper_monitor_if_print, DLT_JUNIPER_MONITOR },
 #endif
 #ifdef DLT_JUNIPER_SERVICES
-       { juniper_services_print, DLT_JUNIPER_SERVICES },
+       { juniper_services_if_print, DLT_JUNIPER_SERVICES },
 #endif
 #ifdef DLT_JUNIPER_ETHER
-       { juniper_ether_print,  DLT_JUNIPER_ETHER },
+       { juniper_ether_if_print,       DLT_JUNIPER_ETHER },
 #endif
 #ifdef DLT_JUNIPER_PPP
-       { juniper_ppp_print,    DLT_JUNIPER_PPP },
+       { juniper_ppp_if_print, DLT_JUNIPER_PPP },
 #endif
 #ifdef DLT_JUNIPER_FRELAY
-       { juniper_frelay_print, DLT_JUNIPER_FRELAY },
+       { juniper_frelay_if_print,      DLT_JUNIPER_FRELAY },
 #endif
 #ifdef DLT_JUNIPER_CHDLC
-       { juniper_chdlc_print,  DLT_JUNIPER_CHDLC },
+       { juniper_chdlc_if_print,       DLT_JUNIPER_CHDLC },
 #endif
 #ifdef DLT_PKTAP
        { pktap_if_print,       DLT_PKTAP },
@@ -226,23 +226,16 @@ static const struct printer printers[] = {
 static void    ndo_default_print(netdissect_options *ndo, const u_char *bp,
                    u_int length);
 
-static void    ndo_error(netdissect_options *ndo, const char *fmt, ...)
-                   __attribute__((noreturn))
-#ifdef __ATTRIBUTE___FORMAT_OK
-                   __attribute__((format (printf, 2, 3)))
-#endif /* __ATTRIBUTE___FORMAT_OK */
-                   ;
-static void    ndo_warning(netdissect_options *ndo, const char *fmt, ...)
-#ifdef __ATTRIBUTE___FORMAT_OK
-                   __attribute__((format (printf, 2, 3)))
-#endif /* __ATTRIBUTE___FORMAT_OK */
-                   ;
-
-static int     ndo_printf(netdissect_options *ndo, const char *fmt, ...)
-#ifdef __ATTRIBUTE___FORMAT_OK
-                    __attribute ((format (printf, 2, 3)))
-#endif /* __ATTRIBUTE___FORMAT_OK */
-                    ;
+static void NORETURN ndo_error(netdissect_options *ndo,
+                    FORMAT_STRING(const char *fmt), ...)
+                    PRINTFLIKE(2, 3);
+static void    ndo_warning(netdissect_options *ndo,
+                   FORMAT_STRING(const char *fmt), ...)
+                   PRINTFLIKE(2, 3);
+
+static int     ndo_printf(netdissect_options *ndo,
+                    FORMAT_STRING(const char *fmt), ...)
+                    PRINTFLIKE(2, 3);
 
 void
 init_print(netdissect_options *ndo, uint32_t localnet, uint32_t mask,
@@ -329,8 +322,8 @@ pretty_print_packet(netdissect_options *ndo, const struct pcap_pkthdr *h,
        ts_print(ndo, &h->ts);
 
        /*
-        * Some printers want to check that they're not walking off the
-        * end of the packet.
+        * Printers must check that they're not walking off the end of
+        * the packet.
         * Rather than pass it all the way down, we set this member
         * of the netdissect_options structure.
         */