diff options
author | Denis Ovsienko <denis@ovsienko.info> | 2021-01-12 18:13:26 +0000 |
---|---|---|
committer | Denis Ovsienko <denis@ovsienko.info> | 2021-01-13 00:21:24 +0000 |
commit | 6e33955f9ee75103e0dae40787c81d88a709f2bd (patch) | |
tree | 6c436918f23d1766cb9cbeb9673241e02d9eca37 | |
parent | d9740d6f4c1b81bd431c1d195ae9d4623fe535ef (diff) | |
download | tcpdump-6e33955f9ee75103e0dae40787c81d88a709f2bd.tar.gz |
AppleTalk: Declutter appletalk.h.
Lose unused definitions and structures. Move most other contents into
print-atalk.c and rearrange for clarity. Lose a dead #ifdef block.
-rw-r--r-- | CHANGES | 1 | ||||
-rw-r--r-- | appletalk.h | 124 | ||||
-rw-r--r-- | print-atalk.c | 77 |
3 files changed, 72 insertions, 130 deletions
@@ -6,6 +6,7 @@ Monthday, Month DD, YYYY by gharris and denis EGP: Replace custom code with tok2str() EIGRP: Get the packet header fields right. UDP: Clean up address and port printing. + AppleTalk: Declutter appletalk.h. Monthday, Month DD, YYYY by gharris Summary for 4.99.1 tcpdump release (so far!) diff --git a/appletalk.h b/appletalk.h index ef4013f1..59379ba9 100644 --- a/appletalk.h +++ b/appletalk.h @@ -30,130 +30,6 @@ struct LAP { #define lapDDP 2 /* DDP type */ #define lapKLAP 'K' /* Kinetics KLAP type */ -/* Datagram Delivery Protocol */ - -struct atDDP { - nd_uint16_t length; - nd_uint16_t checksum; - nd_uint16_t dstNet; - nd_uint16_t srcNet; - nd_uint8_t dstNode; - nd_uint8_t srcNode; - nd_uint8_t dstSkt; - nd_uint8_t srcSkt; - nd_uint8_t type; -}; - -struct atShortDDP { - nd_uint16_t length; - nd_uint8_t dstSkt; - nd_uint8_t srcSkt; - nd_uint8_t type; -}; - -#define ddpMaxWKS 0x7F -#define ddpMaxData 586 -#define ddpLengthMask 0x3FF -#define ddpHopShift 10 -#define ddpSize 13 /* size of DDP header (avoid struct padding) */ -#define ddpSSize 5 -#define ddpWKS 128 /* boundary of DDP well known sockets */ -#define ddpRTMP 1 /* RTMP type */ -#define ddpRTMPrequest 5 /* RTMP request type */ -#define ddpNBP 2 /* NBP type */ -#define ddpATP 3 /* ATP type */ -#define ddpECHO 4 /* ECHO type */ -#define ddpIP 22 /* IP type */ -#define ddpARP 23 /* ARP type */ -#define ddpEIGRP 88 /* EIGRP over Appletalk */ -#define ddpKLAP 0x4b /* Kinetics KLAP type */ - - -/* AppleTalk Transaction Protocol */ - -struct atATP { - nd_uint8_t control; - nd_uint8_t bitmap; - nd_uint16_t transID; - nd_uint32_t userData; -}; - -#define atpReqCode 0x40 -#define atpRspCode 0x80 -#define atpRelCode 0xC0 -#define atpXO 0x20 -#define atpEOM 0x10 -#define atpSTS 0x08 -#define atpFlagMask 0x3F -#define atpControlMask 0xF8 -#define atpMaxNum 8 -#define atpMaxData 578 - - -/* AppleTalk Echo Protocol */ - -struct atEcho { - nd_uint8_t echoFunction; - nd_uint8_t echoData[1]; /* Should be [], C99-style */ -}; - -#define echoSkt 4 /* the echoer socket */ -#define echoSize 1 /* size of echo header */ -#define echoRequest 1 /* echo request */ -#define echoReply 2 /* echo request */ - - -/* Name Binding Protocol */ - -struct atNBP { - nd_uint8_t control; - nd_uint8_t id; -}; - -struct atNBPtuple { - nd_uint16_t net; - nd_uint8_t node; - nd_uint8_t skt; - nd_uint8_t enumerator; -}; - -#define nbpBrRq 0x10 -#define nbpLkUp 0x20 -#define nbpLkUpReply 0x30 - -#define nbpNIS 2 -#define nbpTupleMax 15 - -#define nbpHeaderSize 2 -#define nbpTupleSize 5 - -#define nbpSkt 2 /* NIS */ - - -/* Routing Table Maint. Protocol */ - -#define rtmpSkt 1 /* number of RTMP socket */ -#define rtmpSize 4 /* minimum size */ -#define rtmpTupleSize 3 - - -/* Zone Information Protocol */ - -struct zipHeader { - nd_uint8_t command; - nd_uint8_t netcount; -}; - -#define zipHeaderSize 2 -#define zipQuery 1 -#define zipReply 2 -#define zipTakedown 3 -#define zipBringup 4 -#define ddpZIP 6 -#define zipSkt 6 -#define GetMyZone 7 -#define GetZoneList 8 - /* * UDP port range used for ddp-in-udp encapsulation is 16512-16639 * for client sockets (128-255) and 200-327 for server sockets diff --git a/print-atalk.c b/print-atalk.c index d9f86c72..ae191397 100644 --- a/print-atalk.c +++ b/print-atalk.c @@ -36,7 +36,74 @@ #include "extract.h" #include "appletalk.h" +/* Datagram Delivery Protocol */ + +struct atDDP { + nd_uint16_t length; + nd_uint16_t checksum; + nd_uint16_t dstNet; + nd_uint16_t srcNet; + nd_uint8_t dstNode; + nd_uint8_t srcNode; + nd_uint8_t dstSkt; + nd_uint8_t srcSkt; + nd_uint8_t type; +}; +#define ddpSize 13 + +struct atShortDDP { + nd_uint16_t length; + nd_uint8_t dstSkt; + nd_uint8_t srcSkt; + nd_uint8_t type; +}; +#define ddpSSize 5 + +/* AppleTalk Transaction Protocol */ + +struct atATP { + nd_uint8_t control; + nd_uint8_t bitmap; + nd_uint16_t transID; + nd_uint32_t userData; +}; + +#define atpReqCode 0x40 +#define atpRspCode 0x80 +#define atpRelCode 0xC0 +#define atpXO 0x20 +#define atpEOM 0x10 +#define atpSTS 0x08 +/* Name Binding Protocol */ + +struct atNBP { + nd_uint8_t control; + nd_uint8_t id; +}; +#define nbpHeaderSize 2 + +struct atNBPtuple { + nd_uint16_t net; + nd_uint8_t node; + nd_uint8_t skt; + nd_uint8_t enumerator; +}; +#define nbpTupleSize 5 + +#define nbpBrRq 0x10 +#define nbpLkUp 0x20 +#define nbpLkUpReply 0x30 + +#define ddpRTMP 1 /* RTMP type */ +#define ddpNBP 2 /* NBP type */ +#define ddpATP 3 /* ATP type */ +#define ddpECHO 4 /* ECHO type */ +#define ddpRTMPrequest 5 /* RTMP request type */ +#define ddpIP 22 /* IP type */ +#define ddpARP 23 /* ARP type */ +#define ddpKLAP 0x4b /* Kinetics KLAP type */ +#define ddpEIGRP 88 /* EIGRP over Appletalk */ static const struct tok type2str[] = { { ddpRTMP, "rtmp" }, { ddpRTMPrequest, "rtmpReq" }, @@ -163,12 +230,6 @@ llap_print(netdissect_options *ndo, GET_U_1(dp->srcNode), GET_U_1(dp->srcSkt)); break; -#ifdef notdef - case lapKLAP: - klap_print(bp, length); - break; -#endif - default: ND_PRINT("%u > %u at-lap#%u %u", GET_U_1(lp->src), GET_U_1(lp->dst), GET_U_1(lp->type), @@ -679,6 +740,10 @@ ataddr_string(netdissect_options *ndo, return (tp->name); } +#define rtmpSkt 1 +#define nbpSkt 2 +#define echoSkt 4 +#define zipSkt 6 static const struct tok skt2str[] = { { rtmpSkt, "rtmp" }, /* routing table maintenance */ { nbpSkt, "nis" }, /* name info socket */ |