/* * Print AppleTalk Datagram Delivery Protocol packets. */ static void ddp_print(netdissect_options *ndo, register const u_char *bp, register u_int length, register int t, register u_short snet, register u_char snode, u_char skt) { switch (t) { case ddpNBP: nbp_print(ndo, (const struct atNBP *)bp, length, snet, snode, skt); break; case ddpATP: atp_print(ndo, (const struct atATP *)bp, length); break; case ddpEIGRP: eigrp_print(ndo, bp, length); break; default: ND_PRINT((ndo, " at-%s %d", tok2str(type2str, NULL, t), length)); break; } }
/* * Print AppleTalk Datagram Delivery Protocol packets. */ static void ddp_print(register const u_char *bp, register u_int length, register int t, register u_short snet, register u_char snode, u_char skt) { switch (t) { case ddpNBP: nbp_print((const struct atNBP *)bp, length, snet, snode, skt); break; case ddpATP: atp_print((const struct atATP *)bp, length); break; #ifndef EMBED case ddpEIGRP: eigrp_print(bp, length); break; #endif default: (void)printf(" at-%s %d", tok2str(type2str, NULL, t), length); break; } }
void ipx_decode(const struct ipxHdr *ipx, const u_char *datap, u_int length) { register u_short dstSkt; dstSkt = EXTRACT_16BITS(&ipx->dstSkt); switch (dstSkt) { case IPX_SKT_NCP: (void)printf("ipx-ncp %d", length); break; case IPX_SKT_SAP: ipx_sap_print((u_short *)datap, length); break; case IPX_SKT_RIP: ipx_rip_print((u_short *)datap, length); break; case IPX_SKT_NETBIOS: (void)printf("ipx-netbios %d", length); #ifdef TCPDUMP_DO_SMB ipx_netbios_print(datap, length); #endif break; case IPX_SKT_DIAGNOSTICS: (void)printf("ipx-diags %d", length); break; case IPX_SKT_NWLINK_DGM: (void)printf("ipx-nwlink-dgm %d", length); #ifdef TCPDUMP_DO_SMB ipx_netbios_print(datap, length); #endif break; case IPX_SKT_EIGRP: eigrp_print(datap, length); break; default: (void)printf("ipx-#%x %d", dstSkt, length); break; } }