X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/ad06a893cfd3acca3fba38d8b39b6b15dd3053ea..44b03896e9ebfa87fb5d60eb0ca2206707d595cf:/print-arcnet.c diff --git a/print-arcnet.c b/print-arcnet.c index abec0240..48a43030 100644 --- a/print-arcnet.c +++ b/print-arcnet.c @@ -21,8 +21,8 @@ * From: NetBSD: print-arcnet.c,v 1.2 2000/04/24 13:02:28 itojun Exp */ #ifndef lint -static const char rcsid[] = - "@(#) $Header: /tcpdump/master/tcpdump/print-arcnet.c,v 1.14 2003-01-23 09:05:38 guy Exp $ (LBL)"; +static const char rcsid[] _U_ = + "@(#) $Header: /tcpdump/master/tcpdump/print-arcnet.c,v 1.20 2005-04-06 21:32:38 mcr Exp $ (LBL)"; #endif #ifdef HAVE_CONFIG_H @@ -103,7 +103,7 @@ arcnet_print(const u_char *bp, u_int length, int phds, int flag, u_int seqid) /* * This is the top level routine of the printer. 'p' points * to the ARCNET header of the packet, 'h->ts' is the timestamp, - * 'h->length' is the length of the packet off the wire, and 'h->caplen' + * 'h->len' is the length of the packet off the wire, and 'h->caplen' * is the number of bytes actually captured. */ u_int @@ -151,11 +151,11 @@ arcnet_if_print(const struct pcap_pkthdr *h, const u_char *p) return (caplen); } flag = ap->arc_flag2; - seqid = ap->arc_seqid2; + seqid = ntohs(ap->arc_seqid2); archdrlen = ARC_HDRNEWLEN_EXC; } else { flag = ap->arc_flag; - seqid = ap->arc_seqid; + seqid = ntohs(ap->arc_seqid); archdrlen = ARC_HDRNEWLEN; } } @@ -187,10 +187,11 @@ arcnet_if_print(const struct pcap_pkthdr *h, const u_char *p) /* * This is the top level routine of the printer. 'p' points * to the ARCNET header of the packet, 'h->ts' is the timestamp, - * 'h->length' is the length of the packet off the wire, and 'h->caplen' + * 'h->len' is the length of the packet off the wire, and 'h->caplen' * is the number of bytes actually captured. It is quite similar * to the non-Linux style printer except that Linux doesn't ever - * supply packets that look like exception frames, and headers have an + * supply packets that look like exception frames, it always supplies + * reassembled packets rather than raw frames, and headers have an * extra "offset" field between the src/dest and packet type. */ u_int @@ -200,8 +201,7 @@ arcnet_linux_if_print(const struct pcap_pkthdr *h, const u_char *p) u_int length = h->len; const struct arc_linux_header *ap; - int flag = 0, archdrlen = 0; - u_int seqid = 0; + int archdrlen = 0; u_char arc_type; if (caplen < ARC_LINUX_HDRLEN) { @@ -228,7 +228,7 @@ arcnet_linux_if_print(const struct pcap_pkthdr *h, const u_char *p) } if (eflag) - arcnet_print(p, length, 0, flag, seqid); + arcnet_print(p, length, 0, 0, 0); /* * Go past the ARCNET header. @@ -259,7 +259,7 @@ arcnet_encap_print(u_char arctype, const u_char *p, case ARCTYPE_IP_OLD: case ARCTYPE_IP: - ip_print(p, length); + ip_print(gndo, p, length); return (1); #ifdef INET6 @@ -271,7 +271,7 @@ arcnet_encap_print(u_char arctype, const u_char *p, case ARCTYPE_ARP_OLD: case ARCTYPE_ARP: case ARCTYPE_REVARP: - arp_print(p, length, caplen); + arp_print(gndo, p, length, caplen); return (1); case ARCTYPE_ATALK: /* XXX was this ever used? */ @@ -288,3 +288,10 @@ arcnet_encap_print(u_char arctype, const u_char *p, return (0); } } + +/* + * Local Variables: + * c-style: bsd + * End: + */ +