Remove atalk support. Significantly shortens the manpage. libpcap still
supports it. This diff doesn't include the removal of two files:
appletalk.h and print-atalk.c.

Index: usr.sbin/tcpdump/INSTALL
===================================================================
RCS file: /cvs/src/usr.sbin/tcpdump/INSTALL,v
retrieving revision 1.6
diff -u -p -r1.6 INSTALL
--- usr.sbin/tcpdump/INSTALL    5 Dec 2015 21:43:51 -0000       1.6
+++ usr.sbin/tcpdump/INSTALL    28 May 2017 13:46:58 -0000
@@ -8,7 +8,6 @@ README          - description of distribution
 VERSION                - version of this release
 addrtoname.c   - address to hostname routines
 addrtoname.h   - address to hostname definitions
-appletalk.h    - AppleTalk definitions
 atime.awk      - TCP ack awk script
 bootp.h                - BOOTP definitions
 bpf_dump.c     - bpf instruction pretty-printer routine
@@ -35,7 +34,6 @@ ospf.h                - Open Shortest Path First defin
 packetdat.awk  - TCP chunk summary awk script
 parsenfsfh.c   - Network File System file parser routines
 print-arp.c    - Address Resolution Protocol printer routines
-print-atalk.c  - AppleTalk printer routines
 print-atm.c    - atm printer routines
 print-bootp.c  - BOOTP printer routines
 print-cnfp.c   - Cisco NetFlow printer routines
Index: usr.sbin/tcpdump/Makefile
===================================================================
RCS file: /cvs/src/usr.sbin/tcpdump/Makefile,v
retrieving revision 1.61
diff -u -p -r1.61 Makefile
--- usr.sbin/tcpdump/Makefile   18 Nov 2016 17:37:03 -0000      1.61
+++ usr.sbin/tcpdump/Makefile   28 May 2017 13:46:58 -0000
@@ -35,7 +35,7 @@ DPADD+=       ${LIBL} ${LIBPCAP} ${LIBCRYPTO}
 
 SRCS=  tcpdump.c addrtoname.c privsep.c privsep_fdpass.c privsep_pcap.c \
        print-ether.c print-ip.c print-arp.c print-tcp.c print-udp.c \
-       print-atalk.c print-domain.c print-tftp.c print-bootp.c print-nfs.c \
+       print-domain.c print-tftp.c print-bootp.c print-nfs.c \
        print-icmp.c print-sl.c print-ppp.c print-rip.c print-timed.c \
        print-snmp.c print-ntp.c print-null.c print-ospf.c print-gtp.c \
        print-fddi.c print-llc.c print-sunrpc.c print-hsrp.c print-vqp.c \
Index: usr.sbin/tcpdump/ethertype.h
===================================================================
RCS file: /cvs/src/usr.sbin/tcpdump/ethertype.h,v
retrieving revision 1.14
diff -u -p -r1.14 ethertype.h
--- usr.sbin/tcpdump/ethertype.h        5 Dec 2008 01:25:24 -0000       1.14
+++ usr.sbin/tcpdump/ethertype.h        28 May 2017 13:46:58 -0000
@@ -93,12 +93,6 @@
 #ifndef ETHERTYPE_VPROD
 #define ETHERTYPE_VPROD                0x805c
 #endif
-#ifndef ETHERTYPE_ATALK
-#define ETHERTYPE_ATALK                0x809b
-#endif
-#ifndef ETHERTYPE_AARP
-#define ETHERTYPE_AARP         0x80f3
-#endif
 #ifndef ETHERTYPE_8021Q
 #define ETHERTYPE_8021Q                0x8100
 #endif
Index: usr.sbin/tcpdump/interface.h
===================================================================
RCS file: /cvs/src/usr.sbin/tcpdump/interface.h,v
retrieving revision 1.69
diff -u -p -r1.69 interface.h
--- usr.sbin/tcpdump/interface.h        16 Nov 2016 13:47:27 -0000      1.69
+++ usr.sbin/tcpdump/interface.h        28 May 2017 13:46:58 -0000
@@ -183,10 +183,7 @@ extern int ether_encap_print(u_short, co
 extern int llc_print(const u_char *, u_int, u_int, const u_char *,
        const u_char *);
 extern int pppoe_if_print(u_short, const u_char *, u_int, u_int);
-extern void aarp_print(const u_char *, u_int);
 extern void arp_print(const u_char *, u_int, u_int);
-extern void atalk_print(const u_char *, u_int);
-extern void atalk_print_llap(const u_char *, u_int);
 extern void atm_if_print(u_char *, const struct pcap_pkthdr *, const u_char *);
 extern void bootp_print(const u_char *, u_int, u_short, u_short);
 extern void bgp_print(const u_char *, int);
Index: usr.sbin/tcpdump/print-ether.c
===================================================================
RCS file: /cvs/src/usr.sbin/tcpdump/print-ether.c,v
retrieving revision 1.31
diff -u -p -r1.31 print-ether.c
--- usr.sbin/tcpdump/print-ether.c      11 Jul 2016 00:27:50 -0000      1.31
+++ usr.sbin/tcpdump/print-ether.c      28 May 2017 13:46:58 -0000
@@ -206,16 +206,6 @@ recurse:
                decnet_print(p, length, caplen);
                return (1);
 
-       case ETHERTYPE_ATALK:
-               if (vflag)
-                       fputs("et1 ", stdout);
-               atalk_print_llap(p, length);
-               return (1);
-
-       case ETHERTYPE_AARP:
-               aarp_print(p, length);
-               return (1);
-
        case ETHERTYPE_8021Q:
                printf("802.1Q ");
        case ETHERTYPE_QINQ:
Index: usr.sbin/tcpdump/print-llc.c
===================================================================
RCS file: /cvs/src/usr.sbin/tcpdump/print-llc.c,v
retrieving revision 1.20
diff -u -p -r1.20 print-llc.c
--- usr.sbin/tcpdump/print-llc.c        16 Nov 2015 00:16:39 -0000      1.20
+++ usr.sbin/tcpdump/print-llc.c        28 May 2017 13:46:58 -0000
@@ -118,24 +118,7 @@ llc_print(const u_char *p, u_int length,
 
                /* This is an encapsulated Ethernet packet */
                et = EXTRACT_16BITS(&llc.ethertype[0]);
-
-               /*
-                * Some protocols have special handling if they are 802.3
-                * SNAP encapsulated vs vers II encapsulated. Handle
-                * those special protocols here, and hand the rest to
-                * print-ether.c so we don't have to duplicate
-                * all that code here.
-                */
-               switch (et) {
-               case ETHERTYPE_ATALK:
-                       atalk_print(p, length);
-                       ret = 1;
-                       break;
-               default:
-                       ret = ether_encap_print(et, p, length, caplen);
-                       break;
-               }
-
+               ret = ether_encap_print(et, p, length, caplen);
                if (ret)
                        return (ret);
        }
Index: usr.sbin/tcpdump/print-udp.c
===================================================================
RCS file: /cvs/src/usr.sbin/tcpdump/print-udp.c,v
retrieving revision 1.40
diff -u -p -r1.40 print-udp.c
--- usr.sbin/tcpdump/print-udp.c        22 Dec 2015 21:01:07 -0000      1.40
+++ usr.sbin/tcpdump/print-udp.c        28 May 2017 13:46:59 -0000
@@ -56,7 +56,6 @@
 #include "interface.h"
 #include "addrtoname.h"
 #include "extract.h"
-#include "appletalk.h"
 
 #include "nfsv2.h"
 #include "bootp.h"
@@ -521,14 +520,6 @@ udp_print(const u_char *bp, u_int length
                                return;
                        }
 #endif
-               }
-               if (TTEST(((struct LAP *)cp)->type) &&
-                   ((struct LAP *)cp)->type == lapDDP &&
-                   (atalk_port(sport) || atalk_port(dport))) {
-                       if (vflag)
-                               fputs("kip ", stdout);
-                       atalk_print_llap(cp, length);
-                       return;
                }
        }
 #if 0
Index: usr.sbin/tcpdump/privsep.c
===================================================================
RCS file: /cvs/src/usr.sbin/tcpdump/privsep.c,v
retrieving revision 1.44
diff -u -p -r1.44 privsep.c
--- usr.sbin/tcpdump/privsep.c  23 Jan 2017 04:25:05 -0000      1.44
+++ usr.sbin/tcpdump/privsep.c  28 May 2017 13:46:59 -0000
@@ -101,8 +101,7 @@ struct ftab {
        int count;
 };
 
-static struct ftab file_table[] = {{"/etc/appletalk.names", 1, 0},
-                                  {PF_OSFP_FILE, 1, 0}};
+static struct ftab file_table[] = {{PF_OSFP_FILE, 1, 0}};
 
 #define NUM_FILETAB (sizeof(file_table) / sizeof(struct ftab))
 
Index: usr.sbin/tcpdump/privsep.h
===================================================================
RCS file: /cvs/src/usr.sbin/tcpdump/privsep.h,v
retrieving revision 1.8
diff -u -p -r1.8 privsep.h
--- usr.sbin/tcpdump/privsep.h  14 Jul 2015 20:23:40 -0000      1.8
+++ usr.sbin/tcpdump/privsep.h  28 May 2017 13:46:59 -0000
@@ -22,8 +22,7 @@
 #define TCPDUMP_MAGIC 0xa1b2c3d4
 
 /* file ids used by priv_getlines */
-#define FTAB_APPLETALK 0
-#define FTAB_PFOSFP    1
+#define FTAB_PFOSFP    0
 
 enum cmd_types {
        PRIV_OPEN_BPF,          /* open a bpf descriptor */
Index: usr.sbin/tcpdump/tcpdump.8
===================================================================
RCS file: /cvs/src/usr.sbin/tcpdump/tcpdump.8,v
retrieving revision 1.92
diff -u -p -r1.92 tcpdump.8
--- usr.sbin/tcpdump/tcpdump.8  19 Apr 2017 05:36:13 -0000      1.92
+++ usr.sbin/tcpdump/tcpdump.8  28 May 2017 13:47:00 -0000
@@ -1604,142 +1604,6 @@ requests, and matches them to the replie
 .Pq transaction ID .
 If a reply does not closely follow the corresponding request,
 it might not be parsable.
-.Ss KIP AppleTalk (DDP in UDP)
-AppleTalk DDP packets encapsulated in UDP datagrams
-are de-encapsulated and dumped as DDP packets
-.Pq i.e., all the UDP header information is discarded .
-The file
-.Pa /etc/atalk.names
-is used to translate AppleTalk net and node numbers to names.
-Lines in this file have the form
-.Bl -column "number" "name" -offset indent
-.It Sy "number" Ta Ta Sy "name"
-.It "1.254" Ta Ta "ether"
-.It "16.1" Ta Ta "icsd-net"
-.It "1.254.110" Ta Ta "ace"
-.El
-.Pp
-The first two lines give the names of AppleTalk networks.
-The third line gives the name of a particular host
-(a host is distinguished from a net by the 3rd octet in the number;
-a net number
-.Em must
-have two octets and a host number
-.Em must
-have three octets).
-The number and name should be separated by whitespace (blanks or tabs).
-The
-.Pa /etc/atalk.names
-file may contain blank lines or comment lines
-(lines starting with a
-.Ql # ) .
-.Pp
-AppleTalk addresses are printed in the form
-.Pp
-.D1 Ar net . Ns Ar host . Ns Ar port
-.Pp
-For example:
-.Bd -unfilled -offset indent
-144.1.209.2 > icsd-net.112.220
-office.2 > icsd-net.112.220
-jssmag.149.235 > icsd-net.2
-.Ed
-.Pp
-If
-.Pa /etc/atalk.names
-doesn't exist or doesn't contain an entry for some AppleTalk
-host/net number, addresses are printed in numeric form.
-In the first example, NBP
-.Pq DDP port 2
-on net 144.1 node 209
-is sending to whatever is listening on port 220 of net icsd-net node 112.
-The second line is the same except the full name of the source node is known
-.Pq Dq office .
-The third line is a send from port 235 on
-net jssmag node 149 to broadcast on the icsd-net NBP port.
-The broadcast address
-.Pq 255
-is indicated by a net name with no host number;
-for this reason it is a good idea to keep node names and net names distinct in
-.Pa /etc/atalk.names .
-.Pp
-NBP
-.Pq name binding protocol
-and ATP
-.Pq AppleTalk transaction protocol
-packets have their contents interpreted.
-Other protocols just dump the protocol name
-.Po
-or number if no name is registered for the protocol
-.Pc
-and packet size.
-.Pp
-NBP packets are formatted like the following examples:
-.Bd -unfilled
-icsd-net.112.220 > jssmag.2: nbp-lkup 190: "=:LaserWriter@*"
-jssmag.209.2 > icsd-net.112.220: nbp-reply 190: "RM1140:LaserWriter@*" 250
-techpit.2 > icsd-net.112.220: nbp-reply 190: "techpit:LaserWriter@*" 186
-.Ed
-.Pp
-The first line is a name lookup request for laserwriters sent by
-net icsdi-net host
-112 and broadcast on net jssmag.
-The nbp ID for the lookup is 190.
-The second line shows a reply for this request
-.Pq note that it has the same ID
-from host jssmag.209 saying that it has a laserwriter
-resource named RM1140 registered on port 250.
-The third line is another reply to the same request
-saying host techpit has laserwriter techpit registered on port 186.
-.Pp
-ATP packet formatting is demonstrated by the following example:
-.Bd -unfilled -offset indent
-jssmag.209.165 > helios.132: atp-req  12266<0-7> 0xae030001
-helios.132 > jssmag.209.165: atp-resp 12266:0 (512) 0xae040000
-helios.132 > jssmag.209.165: atp-resp 12266:1 (512) 0xae040000
-helios.132 > jssmag.209.165: atp-resp 12266:2 (512) 0xae040000
-helios.132 > jssmag.209.165: atp-resp 12266:3 (512) 0xae040000
-helios.132 > jssmag.209.165: atp-resp 12266:4 (512) 0xae040000
-helios.132 > jssmag.209.165: atp-resp 12266:5 (512) 0xae040000
-helios.132 > jssmag.209.165: atp-resp 12266:6 (512) 0xae040000
-helios.132 > jssmag.209.165: atp-resp*12266:7 (512) 0xae040000
-jssmag.209.165 > helios.132: atp-req  12266<3,5> 0xae030001
-helios.132 > jssmag.209.165: atp-resp 12266:3 (512) 0xae040000
-helios.132 > jssmag.209.165: atp-resp 12266:5 (512) 0xae040000
-jssmag.209.165 > helios.132: atp-rel  12266<0-7> 0xae030001
-jssmag.209.133 > helios.132: atp-req* 12267<0-7> 0xae030002
-.Ed
-.Pp
-Jssmag.209 initiates transaction ID 12266 with host helios by requesting
-up to 8 packets
-.Sm off
-.Pq the Dq <0\-7> .
-.Sm on
-The hex number at the end of the line is the value of the
-.Ar userdata
-field in the request.
-.Pp
-Helios responds with 8 512-byte packets.
-The
-.Dq : Ns Ar n
-following the
-transaction ID gives the packet sequence number in the transaction
-and the number in parentheses is the amount of data in the packet,
-excluding the ATP header.
-The
-.Ql *
-on packet 7 indicates that the EOM bit was set.
-.Pp
-Jssmag.209 then requests that packets 3 & 5 be retransmitted.
-Helios resends them then jssmag.209 releases the transaction.
-Finally, jssmag.209 initiates the next request.
-The
-.Ql *
-on the request indicates that XO
-.Pq exactly once
-was
-.Em not
-set.
 .Ss IP Fragmentation
 Fragmented Internet datagrams are printed as
 .Bd -ragged -offset indent
@@ -1901,12 +1765,6 @@ question section is printed rather than 
 Some believe that inverse queries are themselves a bug and
 prefer to fix the program generating them rather than
 .Nm tcpdump .
-.Pp
-Apple Ethertalk DDP packets could be dumped as easily as KIP DDP packets
-but aren't.
-Even if we were inclined to do anything to promote the use of Ethertalk
-(we aren't, LBL doesn't allow Ethertalk on any of its
-networks so we'd have no way of testing this code).
 .Pp
 A packet trace that crosses a daylight saving time change will give
 skewed time stamps

-- 
Michal Mazurek

Reply via email to