/* \summary: Attached Resource Computer NETwork (ARCNET) printer */
-#ifdef HAVE_CONFIG_H
#include <config.h>
-#endif
#include "netdissect-stdinc.h"
u_int seqid = 0;
u_char arc_type;
- ndo->ndo_protocol = "arcnet_if";
+ ndo->ndo_protocol = "arcnet";
if (caplen < ARC_HDRLEN) {
- nd_print_trunc(ndo);
- ndo->ndo_ll_header_length += caplen;
- return;
+ ndo->ndo_ll_hdr_len += caplen;
+ nd_trunc_longjmp(ndo);
}
ap = (const struct arc_header *)p;
if (caplen < ARC_HDRNEWLEN) {
arcnet_print(ndo, p, length, 0, 0, 0);
ND_PRINT(" phds");
- nd_print_trunc(ndo);
- ndo->ndo_ll_header_length += caplen;
- return;
+ ndo->ndo_ll_hdr_len += caplen;
+ nd_trunc_longjmp(ndo);
}
flag = GET_U_1(ap->arc_flag);
if (caplen < ARC_HDRNEWLEN_EXC) {
arcnet_print(ndo, p, length, 0, 0, 0);
ND_PRINT(" phds extended");
- nd_print_trunc(ndo);
- ndo->ndo_ll_header_length += caplen;
- return;
+ ndo->ndo_ll_hdr_len += caplen;
+ nd_trunc_longjmp(ndo);
}
flag = GET_U_1(ap->arc_flag2);
seqid = GET_BE_U_2(ap->arc_seqid2);
/*
* This is a middle fragment.
*/
- ndo->ndo_ll_header_length += archdrlen;
+ ndo->ndo_ll_hdr_len += archdrlen;
return;
}
if (!arcnet_encap_print(ndo, arc_type, p, length, caplen))
ND_DEFAULTPRINT(p, caplen);
- ndo->ndo_ll_header_length += archdrlen;
+ ndo->ndo_ll_hdr_len += archdrlen;
}
/*
int archdrlen = 0;
u_char arc_type;
- ndo->ndo_protocol = "arcnet_linux_if";
+ ndo->ndo_protocol = "arcnet_linux";
if (caplen < ARC_LINUX_HDRLEN) {
- nd_print_trunc(ndo);
- ndo->ndo_ll_header_length += caplen;
- return;
+ ndo->ndo_ll_hdr_len += caplen;
+ nd_trunc_longjmp(ndo);
}
ap = (const struct arc_linux_header *)p;
default:
archdrlen = ARC_LINUX_HDRNEWLEN;
if (caplen < ARC_LINUX_HDRNEWLEN) {
- nd_print_trunc(ndo);
- ndo->ndo_ll_header_length += caplen;
- return;
+ ndo->ndo_ll_hdr_len += caplen;
+ nd_trunc_longjmp(ndo);
}
break;
case ARCTYPE_IP_OLD:
if (!arcnet_encap_print(ndo, arc_type, p, length, caplen))
ND_DEFAULTPRINT(p, caplen);
- ndo->ndo_ll_header_length += archdrlen;
+ ndo->ndo_ll_hdr_len += archdrlen;
}
/*