X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/c422d3ab0f6de2d38512a4566637bc47df291e74..refs/pull/1034/head:/print-raw.c diff --git a/print-raw.c b/print-raw.c index c8cba8f7..9c6558fe 100644 --- a/print-raw.c +++ b/print-raw.c @@ -19,54 +19,27 @@ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ -#ifndef lint -static const char rcsid[] = - "@(#) $Header: /tcpdump/master/tcpdump/print-raw.c,v 1.37 2002-09-05 21:25:46 guy Exp $ (LBL)"; -#endif +/* \summary: Raw IP printer */ #ifdef HAVE_CONFIG_H -#include "config.h" +#include #endif -#include - -#include -#include -#include +#include "netdissect-stdinc.h" -#include "addrtoname.h" -#include "interface.h" +#include "netdissect.h" /* * The DLT_RAW packet has no header. It contains a raw IP packet. */ void -raw_if_print(u_char *user _U_, const struct pcap_pkthdr *h, const u_char *p) +raw_if_print(netdissect_options *ndo, const struct pcap_pkthdr *h, const u_char *p) { - u_int length = h->len; - u_int caplen = h->caplen; - - ++infodelay; - ts_print(&h->ts); - - /* - * Some printers want to get back at the link level addresses, - * and/or check that they're not walking off the end of the packet. - * Rather than pass them all the way down, we set these globals. - */ - packetp = p; - snapend = p + caplen; - - if (eflag) - printf("ip: "); - - ipN_print(p, length); + ndo->ndo_protocol = "raw"; + ndo->ndo_ll_hdr_len += 0; + if (ndo->ndo_eflag) + ND_PRINT("ip: "); - if (xflag) - default_print(p, caplen); - putchar('\n'); - --infodelay; - if (infoprint) - info(0); + ipN_print(ndo, p, h->len); }