1 diff -urN tcpdump-3.4.orig/Makefile.in tcpdump-3.4/Makefile.in
2 --- tcpdump-3.4.orig/Makefile.in Sat Jul 3 17:50:45 1999
3 +++ tcpdump-3.4/Makefile.in Sat Jul 3 19:03:02 1999
10 +CCOPT = @V_CCOPT@ -DINET6=1
11 +INCLS = -I/usr/include/pcap @V_INCLS@
12 DEFS = @DEFS@ -DHAVE_FDDI
16 print-snmp.c print-sunrpc.c print-tcp.c print-tftp.c print-tr.c \
17 print-udp.c print-wb.c addrtoname.c bpf_dump.c gmt2local.c \
18 machdep.c parsenfsfh.c util.c savestr.c setsignal.c \
19 - print-smb.c smbutil.c
20 + print-smb.c smbutil.c print-ipv6.c print-icmpv6.c
24 diff -urN tcpdump-3.4.orig/addrtoname.c tcpdump-3.4/addrtoname.c
25 --- tcpdump-3.4.orig/addrtoname.c Sat Jul 3 17:50:45 1999
26 +++ tcpdump-3.4/addrtoname.c Sat Jul 3 17:58:06 1999
32 +#if defined(INET6) && __GLIBC__ < 2
33 #include <netinet6/in6.h>
36 diff -urN tcpdump-3.4.orig/linux-include/netinet/ip_icmp.h tcpdump-3.4/linux-include/netinet/ip_icmp.h
37 --- tcpdump-3.4.orig/linux-include/netinet/ip_icmp.h Sat Jul 3 17:50:45 1999
38 +++ tcpdump-3.4/linux-include/netinet/ip_icmp.h Sat Jul 3 19:12:53 1999
40 * @(#)ip_icmp.h 8.1 (Berkeley) 6/10/93
43 +#ifndef _NO_INCLUDE_LOCAL
45 * Interface Control Message Protocol Definitions.
46 * Per RFC 792, September 1981.
48 void icmp_reflect __P((struct mbuf *));
49 void icmp_send __P((struct mbuf *, struct mbuf *));
50 int icmp_sysctl __P((int *, u_int, void *, size_t *, void *, size_t));
53 diff -urN tcpdump-3.4.orig/print-atalk.c tcpdump-3.4/print-atalk.c
54 --- tcpdump-3.4.orig/print-atalk.c Sat Jul 3 17:50:45 1999
55 +++ tcpdump-3.4/print-atalk.c Sat Jul 3 17:58:06 1999
57 #include <netinet/in.h>
58 #include <netinet/in_systm.h>
59 #include <netinet/ip.h>
60 -#include <netinet/ip_var.h>
61 #include <netinet/if_ether.h>
62 #include <netinet/udp.h>
63 -#include <netinet/udp_var.h>
64 #include <netinet/tcp.h>
65 -#include <netinet/tcpip.h>
68 +# include <netinet/ip_var.h>
69 +# include <netinet/udp_var.h>
70 +# include <netinet/tcpip.h>
75 diff -urN tcpdump-3.4.orig/print-atm.c tcpdump-3.4/print-atm.c
76 --- tcpdump-3.4.orig/print-atm.c Sat Jul 3 17:50:45 1999
77 +++ tcpdump-3.4/print-atm.c Sat Jul 3 17:58:06 1999
79 #include <netinet/if_ether.h>
80 #include <netinet/in_systm.h>
81 #include <netinet/ip.h>
82 -#include <netinet/ip_var.h>
83 #include <netinet/udp.h>
84 -#include <netinet/udp_var.h>
85 #include <netinet/tcp.h>
86 -#include <netinet/tcpip.h>
89 +# include <netinet/ip_var.h>
90 +# include <netinet/udp_var.h>
91 +# include <netinet/tcpip.h>
96 diff -urN tcpdump-3.4.orig/print-ax25.c tcpdump-3.4/print-ax25.c
97 --- tcpdump-3.4.orig/print-ax25.c Sat Jul 3 17:50:45 1999
98 +++ tcpdump-3.4/print-ax25.c Sat Jul 3 17:58:06 1999
100 #include <netinet/in.h>
101 #include <netinet/in_systm.h>
102 #include <netinet/ip.h>
103 -#include <netinet/ip_var.h>
105 +#if ! __GLIBC__ >= 2
106 +# include <netinet/ip_var.h>
111 diff -urN tcpdump-3.4.orig/print-domain.c tcpdump-3.4/print-domain.c
112 --- tcpdump-3.4.orig/print-domain.c Sat Jul 3 17:50:45 1999
113 +++ tcpdump-3.4/print-domain.c Sat Jul 3 17:58:06 1999
115 #include <netinet/if_ether.h>
116 #include <netinet/in_systm.h>
117 #include <netinet/ip.h>
118 -#include <netinet/ip_var.h>
119 #include <netinet/udp.h>
120 -#include <netinet/udp_var.h>
121 #include <netinet/tcp.h>
122 -#include <netinet/tcpip.h>
124 +#if ! __GLIBC__ >= 2
125 +# include <netinet/ip_var.h>
126 +# include <netinet/udp_var.h>
127 +# include <netinet/tcpip.h>
131 #undef NOERROR /* Solaris sucks */
132 diff -urN tcpdump-3.4.orig/print-dvmrp.c tcpdump-3.4/print-dvmrp.c
133 --- tcpdump-3.4.orig/print-dvmrp.c Sat Jul 3 17:50:45 1999
134 +++ tcpdump-3.4/print-dvmrp.c Sat Jul 3 17:58:06 1999
136 #include <netinet/in.h>
137 #include <netinet/in_systm.h>
138 #include <netinet/ip.h>
139 -#include <netinet/ip_var.h>
140 #include <netinet/udp.h>
141 -#include <netinet/udp_var.h>
142 #include <netinet/tcp.h>
143 -#include <netinet/tcpip.h>
145 +#if ! __GLIBC__ >= 2
146 +# include <netinet/ip_var.h>
147 +# include <netinet/udp_var.h>
148 +# include <netinet/tcpip.h>
153 diff -urN tcpdump-3.4.orig/print-ether.c tcpdump-3.4/print-ether.c
154 --- tcpdump-3.4.orig/print-ether.c Sat Jul 3 17:50:45 1999
155 +++ tcpdump-3.4/print-ether.c Sat Jul 3 17:58:06 1999
157 #include <netinet/if_ether.h>
158 #include <netinet/in_systm.h>
159 #include <netinet/ip.h>
160 -#include <netinet/ip_var.h>
161 #include <netinet/udp.h>
162 -#include <netinet/udp_var.h>
163 #include <netinet/tcp.h>
164 -#include <netinet/tcpip.h>
166 +#if ! __GLIBC__ >= 2
167 +# include <netinet/ip_var.h>
168 +# include <netinet/udp_var.h>
169 +# include <netinet/tcpip.h>
172 #if defined(__GLIBC__) && __GLIBC__ >= 2
173 #include <linux/sockios.h>
174 diff -urN tcpdump-3.4.orig/print-icmp.c tcpdump-3.4/print-icmp.c
175 --- tcpdump-3.4.orig/print-icmp.c Sat Jul 3 17:50:45 1999
176 +++ tcpdump-3.4/print-icmp.c Sat Jul 3 17:58:06 1999
181 +#if ! __GLIBC__ >= 2
182 +# include <netinet/ip_var.h>
183 +# include <netinet/udp_var.h>
184 +# include <netinet/tcpip.h>
186 +# define __FAVOR_BSD
189 #include <netinet/in.h>
190 #include <netinet/if_ether.h>
191 #include <netinet/in_systm.h>
192 #include <netinet/ip.h>
193 #include <netinet/ip_icmp.h>
194 -#include <netinet/ip_var.h>
195 #include <netinet/udp.h>
196 -#include <netinet/udp_var.h>
197 #include <netinet/tcp.h>
198 -#include <netinet/tcpip.h>
202 diff -urN tcpdump-3.4.orig/print-icmpv6.c tcpdump-3.4/print-icmpv6.c
203 --- tcpdump-3.4.orig/print-icmpv6.c Sat Jul 3 17:50:45 1999
204 +++ tcpdump-3.4/print-icmpv6.c Sat Jul 3 19:31:02 1999
205 @@ -107,30 +107,42 @@
206 #include <sys/types.h>
207 #include <sys/socket.h>
211 #include <netinet/in.h>
212 -#include <netinet/if_ether.h>
213 #include <netinet/in_systm.h>
214 #include <netinet/ip.h>
215 -#include <netinet/ip_icmp.h>
216 -#include <netinet/ip_var.h>
217 #include <netinet/udp.h>
218 -#include <netinet/udp_var.h>
219 #include <netinet/tcp.h>
220 -#include <netinet/tcpip.h>
222 -#include <netinet6/ipv6.h>
223 -#include <netinet6/in6.h>
224 -#include <netinet6/ipv6_var.h>
225 -#include <netinet6/ipv6_icmp.h>
229 +#if ! __GLIBC__ >= 2
230 +# include <netinet/ip_var.h>
231 +# include <netinet/udp_var.h>
232 +# include <netinet/tcpip.h>
238 +# include <netinet/ip6.h>
239 +# include <netinet/icmp6.h>
240 +# include <netinet/ip_icmp.h>
242 +# include <netinet6/in6.h>
243 +# include <netinet6/ipv6.h>
252 #include "interface.h"
253 #include "addrtoname.h"
255 +#define __u8 u_int8_t
256 +#define __u16 u_int16_t
257 +#define __u32 u_int32_t
259 char *ipv6addr_string(struct in6_addr *);
264 icmpv6_print(register const u_char *bp, int length)
267 + register const struct icmp6_hdr *dp;
269 register const struct ipv6_icmp *dp;
272 register const struct ipv6 *oip;
273 register const struct udphdr *ouh;
279 +/* Translation from NRL to Glibc defines */
281 +# define ICMPV6_MINLEN ICMP_MINLEN
282 +# define ICMPV6_ECHOREPLY ICMP6_ECHO_REPLY
283 +# define ICMPV6_ECHO ICMP6_ECHO_REQUEST
284 +# define ICMPV6_TOOBIG ICMP6_PACKET_TOO_BIG
285 +/* Destination unreachable */
286 +# define ICMPV6_UNREACH ICMP6_DST_UNREACH
287 +# define ICMPV6_UNREACH_NOROUTE ICMP6_DST_UNREACH_NOROUTE
288 +# define ICMPV6_UNREACH_ADMIN ICMP6_DST_UNREACH_ADMIN
289 +# define ICMPV6_UNREACH_NOTNEIGHBOR ICMP6_DST_UNREACH_NOTNEIGHBOR
290 +# define ICMPV6_UNREACH_ADDRESS ICMP6_DST_UNREACH_ADDR
291 +# define ICMPV6_UNREACH_PORT ICMP6_DST_UNREACH_NOPORT
293 +# define ICMPV6_GRPQUERY ICMP6_MEMBERSHIP_QUERY
294 +# define ICMPV6_GRPREPORT ICMP6_MEMBERSHIP_REPORT
295 +# define ICMPV6_GRPTERM ICMP6_MEMBERSHIP_REDUCTION
297 +# define ICMPV6_TIMXCEED ICMP6_TIME_EXCEEDED
298 +# define ICMPV6_TIMXCEED_INTRANS ICMP6_TIME_EXCEED_TRANSIT
299 +# define ICMPV6_TIMXCEED_REASS ICMP6_TIME_EXCEED_REASSEMBLY
300 +/* Parameter problems */
301 +# define ICMPV6_PARAMPROB ICMP6_PARAM_PROB
302 +# define ICMPV6_PARAMPROB_PROB ICMP6_PARAMPROB_HEADER
303 +# define ICMPV6_PARAMPROB_NEXTHDR ICMP6_PARAMPROB_NEXTHEADER
304 +# define ICMPV6_PARAMPROB_BADOPT ICMP6_PARAMPROB_OPTION
305 +/* Neighbor discovery */
306 +# define ICMPV6_ROUTERSOL ND_ROUTER_SOLICIT
307 +# define ICMPV6_ROUTERADV ND_ROUTER_ADVERT
308 +# define ICMPV6_NEIGHBORSOL ND_NEIGHBOR_SOLICIT
309 +# define ICMPV6_NEIGHBORADV ND_NEIGHBOR_ADVERT
310 +# define ICMPV6_REDIRECT ND_REDIRECT
312 +# define icmp_type icmp6_type
313 +# define icmp_code icmp6_code
314 +# define icmp_nexthopmtu icmp6_mtu
315 +# define icmp_grpdelay icmp6_maxdelay
316 +# define icmp_paramptr icmp6_pptr
320 if (left < ICMPV6_MINLEN)
322 diff -urN tcpdump-3.4.orig/print-igrp.c tcpdump-3.4/print-igrp.c
323 --- tcpdump-3.4.orig/print-igrp.c Sat Jul 3 17:50:45 1999
324 +++ tcpdump-3.4/print-igrp.c Sat Jul 3 17:58:06 1999
326 #include <netinet/in.h>
327 #include <netinet/in_systm.h>
328 #include <netinet/ip.h>
329 -#include <netinet/ip_var.h>
330 #include <netinet/udp.h>
331 -#include <netinet/udp_var.h>
333 +#if ! __GLIBC__ >= 2
334 +# include <netinet/ip_var.h>
335 +# include <netinet/udp_var.h>
336 +# include <netinet/tcpip.h>
341 diff -urN tcpdump-3.4.orig/print-ip.c tcpdump-3.4/print-ip.c
342 --- tcpdump-3.4.orig/print-ip.c Sat Jul 3 17:50:45 1999
343 +++ tcpdump-3.4/print-ip.c Sat Jul 3 17:58:06 1999
345 #include <netinet/in.h>
346 #include <netinet/in_systm.h>
347 #include <netinet/ip.h>
348 -#include <netinet/ip_var.h>
349 #include <netinet/udp.h>
350 -#include <netinet/udp_var.h>
351 #include <netinet/tcp.h>
352 -#include <netinet/tcpip.h>
354 +#if ! __GLIBC__ >= 2
355 +# include <netinet/ip_var.h>
356 +# include <netinet/udp_var.h>
357 +# include <netinet/tcpip.h>
362 diff -urN tcpdump-3.4.orig/print-ipv6.c tcpdump-3.4/print-ipv6.c
363 --- tcpdump-3.4.orig/print-ipv6.c Sat Jul 3 17:50:45 1999
364 +++ tcpdump-3.4/print-ipv6.c Sat Jul 3 19:02:24 1999
365 @@ -111,16 +111,23 @@
366 #include <netinet/in.h>
367 #include <netinet/in_systm.h>
368 #include <netinet/ip.h>
369 -#include <netinet/ip_var.h>
370 #include <netinet/udp.h>
371 -#include <netinet/udp_var.h>
372 #include <netinet/tcp.h>
373 -#include <netinet/tcpip.h>
375 +#if ! __GLIBC__ >= 2
376 +# include <netinet/ip_var.h>
377 +# include <netinet/udp_var.h>
378 +# include <netinet/tcpip.h>
382 -#include <netinet6/in6.h>
384 -#include <netinet6/ipv6.h>
386 +# include <netinet/ip6.h>
388 +# include <netinet6/in6.h>
389 +# include <netinet6/ipv6.h>
395 printf(" Pad%d", optlen);
398 - printf(" Jumbo %d", ntohl(*(__u32*)optptr));
399 + printf(" Jumbo %d", ntohl(*(u_int32_t*)optptr));
401 printf(" <len %d is wrong>", optlen);
408 +static void frag_print(struct ip6_frag *ip)
409 +# define frag_reserved ip6f_reserved
410 +# define frag_id ip6f_ident
411 +# define frag_bitsoffset ip6f_offlg
413 static void frag_print(struct ipv6_fraghdr *ip)
419 printf(" id=%u] ", ntohl(ip->frag_id));
423 +static void route_print(struct ip6_rthdr0 *ip)
424 +#define i6sr_type ip6r0_type
425 +#define i6sr_numaddrs ip6r0_len
426 +#define i6sr_left ip6r0_segleft
427 +#define i6sr_reserved ip6r0_reserved
429 static void route_print(struct ipv6_srcroute0 *ip)
432 printf("rthdr%d ", ip->i6sr_type);
433 if (ip->i6sr_type == 0) {
436 if (n == ip->i6sr_left)
438 - if (htonl(1<<i)&*(__u32*)&ip->i6sr_reserved)
439 + if (htonl(1<<i)&*(u_int32_t*)&ip->i6sr_reserved)
441 printf("%s ", ipv6addr_string(a));
447 - if (htonl(1<<i)&*(__u32*)&ip->i6sr_reserved)
448 + if (htonl(1<<i)&*(u_int32_t*)&ip->i6sr_reserved)
453 void ipv6_print (register const u_char *bp, register int length)
457 + register const struct ip6_hdr *ip;
459 register const struct ipv6 *ip;
462 int first = 1, len=0;
464 @@ -272,12 +298,21 @@
465 struct hostent *name;
468 - ip= (const struct ipv6 *) bp;
470 + ip= (const struct ip6_hdr *) bp;
471 + if (bp + sizeof(struct ip6_hdr) > snapend) {
473 + ip= (const struct ipv6_hdr *) bp;
474 if (bp + sizeof(struct ipv6) > snapend) {
480 + if (length < sizeof(struct ip6_hdr)){
482 if (length < sizeof(struct ipv6)){
485 (void)printf("truncated-ipv6 %d", length);
492 + len = sizeof(struct ip6_hdr) + ntohs(ip->ip6_plen);
494 len = sizeof(struct ipv6) + ntohs(ip->ipv6_length);
498 if (!partial_frame) {
499 @@ -295,13 +334,24 @@
504 + len = sizeof(struct ip6_hdr);
506 + printf(" %s > %s ", ipv6addr_string(&(ip->ip6_src)),
507 + ipv6addr_string(&(ip->ip6_dst)));
509 len = sizeof(struct ipv6);
511 printf("%s > %s ", ipv6addr_string(&(ip->ipv6_src)),
512 ipv6addr_string(&(ip->ipv6_dst)));
517 + p = ntohl(ip->ip6_flow);
519 p = ntohl(ip->ipv6_versfl);
523 printf("v%d, ", p>>28); /* version */
524 @@ -318,20 +368,40 @@
527 printf("fl 0x%05x, ", p&0x00fffff); /* flow label */
529 + printf("len %d, ", ntohs(ip->ip6_plen)); /* payload length */
530 + printf("hop %d) ", ip->ip6_hlim);
532 printf("len %d, ", ntohs(ip->ipv6_length)); /* payload length */
533 printf("hop %d) ", ip->ipv6_hoplimit);
539 + nhdr = ip->ip6_nxt;
541 nhdr = ip->ipv6_nexthdr;
543 cp = (char *)(ip + 1);
546 + while (( nhdr != IPPROTO_NONE) && (nhdr != IPPROTO_TCP) &&
547 + (nhdr != IPPROTO_UDP) && (nhdr != IPPROTO_ICMPV6) &&
548 + (nhdr != IPPROTO_IPIP) && (nhdr != IPPROTO_IPV6) &&
549 + (nhdr != IPPROTO_RSVP)) {
551 while ((nhdr!=NEXTHDR_NONE)&&(nhdr!=NEXTHDR_TCP)&&(nhdr!=NEXTHDR_UDP)
552 &&(nhdr!=NEXTHDR_ICMPV6)&&(nhdr!=NEXTHDR_IPV4)&&
553 (nhdr!=NEXTHDR_IPV6) && (nhdr!=IPPROTO_RSVP) &&
554 (nhdr!=IPPROTO_PIM)) {
559 + case IPPROTO_HOPOPTS:
561 case NEXTHDR_HOP: /* hop by hop (0)*/
564 if (bp+len <= snapend)
566 @@ -340,66 +410,140 @@
572 + case IPPROTO_ROUTING:
573 + len += sizeof (struct ip6_rthdr0 );
575 case NEXTHDR_ROUTING: /* routing header (43)*/
576 len += sizeof (struct ipv6_srcroute0 );
578 if (bp+len<=snapend && vflag)
580 + route_print((struct ipv6_rthdr0 *)cp);
582 route_print((struct ipv6_srcroute0 *)cp);
585 printf(" route-hdr");
591 + case IPPROTO_FRAGMENT:
592 + len += sizeof (struct ip6_frag);
594 case NEXTHDR_FRAGMENT: /* fragment header (44)*/
595 len += sizeof (struct ipv6_fraghdr);
597 if (bp+len <= snapend && vflag)
599 + frag_print((struct ipv6_frag *)cp);
601 frag_print((struct ipv6_fraghdr *)cp);
605 - if (!((((struct ipv6_fraghdr *)cp)->frag_bitsoffset) & htons(0xfff8))) {
607 + if (!((((struct ip6_frag *)cp)->ip6f_offlg) & htons(IP6F_OFF_MASK))) {
609 + /* IP6_OFFMASK as defined in netinet/ipv6.h doesn't
610 + care about endianess */
611 + if (!((((struct ipv6_fraghdr *)cp)->frag_bitsoffset) & htons(IP6_OFFMASK))) {
619 + nhdr = ((struct ip6_frag *) cp)->ip6f_nxt;
621 nhdr = ((struct ipv6_fraghdr *) cp)->frag_nexthdr;
626 + case IPPROTO_HOPOPTS:
661 + case IPPROTO_ROUTING:
663 case NEXTHDR_ROUTING:
668 + case IPPROTO_FRAGMENT:
670 case NEXTHDR_FRAGMENT:
689 + case IPPROTO_ICMPV6:
703 + case IPPROTO_DSTOPTS:
717 case NEXTHDR_ESP: /* encapsulation header (50)*/
719 len += sizeof(u_int32_t);
721 if (bp + len <= snapend && vflag) {
722 @@ -415,10 +563,14 @@
726 - printf(" esp spi=%08x", *(__u32*)cp);
727 + printf(" esp spi=%08x", *(u_int32_t*)cp);
733 case NEXTHDR_AH: /* authentication header (51)*/
736 len += sizeof(struct ipsec_ah) + sizeof(u_int32_t) * ((struct ipsec_ah *)cp)->ah_datalen;
737 if (bp+len <= snapend && vflag) {
738 @@ -430,13 +582,17 @@
739 cp += ((struct ipsec_ah *)cp)->ah_datalen * sizeof (u_int32_t)+ sizeof(struct ipsec_ah);
741 len += (cp[1] + 2)<<2;
742 - printf(" ah spi=%08x", *(__u32*)(cp+4));
743 + printf(" ah spi=%08x", *(u_int32_t*)(cp+4));
750 + case IPPROTO_DSTOPTS:
752 case NEXTHDR_DEST: /* destination options header (60)*/
755 if (bp + len <= snapend && vflag)
757 @@ -457,27 +613,53 @@
766 tcp_print(cp, len, (const u_char *)ip);
773 udp_print(cp, len, (const u_char *)ip);
776 + case IPPROTO_ICMPV6:
780 icmpv6_print(cp, len);
787 printf(": v4-in-v6");
795 printf(": v6-in-v6");
805 ntoh_rsvp_packet(cp, len);
806 rsvp_print_pkt(cp, len);
811 diff -urN tcpdump-3.4.orig/print-ipx.c tcpdump-3.4/print-ipx.c
812 --- tcpdump-3.4.orig/print-ipx.c Sat Jul 3 17:50:45 1999
813 +++ tcpdump-3.4/print-ipx.c Sat Jul 3 17:58:06 1999
815 #include <netinet/in.h>
816 #include <netinet/in_systm.h>
817 #include <netinet/ip.h>
818 -#include <netinet/ip_var.h>
819 #include <netinet/udp.h>
820 -#include <netinet/udp_var.h>
821 #include <netinet/tcp.h>
822 -#include <netinet/tcpip.h>
824 +#if ! __GLIBC__ >= 2
825 +# include <netinet/ip_var.h>
826 +# include <netinet/udp_var.h>
827 +# include <netinet/tcpip.h>
832 diff -urN tcpdump-3.4.orig/print-krb.c tcpdump-3.4/print-krb.c
833 --- tcpdump-3.4.orig/print-krb.c Sat Jul 3 17:50:45 1999
834 +++ tcpdump-3.4/print-krb.c Sat Jul 3 17:58:06 1999
836 #include <netinet/in.h>
837 #include <netinet/in_systm.h>
838 #include <netinet/ip.h>
839 -#include <netinet/ip_var.h>
840 #include <netinet/udp.h>
841 -#include <netinet/udp_var.h>
843 +#if ! __GLIBC__ >= 2
844 +# include <netinet/ip_var.h>
845 +# include <netinet/udp_var.h>
846 +# include <netinet/tcpip.h>
851 diff -urN tcpdump-3.4.orig/print-nfs.c tcpdump-3.4/print-nfs.c
852 --- tcpdump-3.4.orig/print-nfs.c Sat Jul 3 17:50:45 1999
853 +++ tcpdump-3.4/print-nfs.c Sat Jul 3 17:58:06 1999
855 #include <netinet/if_ether.h>
856 #include <netinet/in_systm.h>
857 #include <netinet/ip.h>
858 -#include <netinet/ip_var.h>
860 +#if ! __GLIBC__ >= 2
861 +# include <netinet/ip_var.h>
862 +# include <netinet/udp_var.h>
863 +# include <netinet/tcpip.h>
868 diff -urN tcpdump-3.4.orig/print-null.c tcpdump-3.4/print-null.c
869 --- tcpdump-3.4.orig/print-null.c Sat Jul 3 17:50:45 1999
870 +++ tcpdump-3.4/print-null.c Sat Jul 3 17:58:06 1999
872 #include <netinet/in_systm.h>
873 #include <netinet/ip.h>
874 #include <netinet/if_ether.h>
875 -#include <netinet/ip_var.h>
876 #include <netinet/udp.h>
877 -#include <netinet/udp_var.h>
878 #include <netinet/tcp.h>
879 -#include <netinet/tcpip.h>
881 +#if ! __GLIBC__ >= 2
882 +# include <netinet/ip_var.h>
883 +# include <netinet/udp_var.h>
884 +# include <netinet/tcpip.h>
889 diff -urN tcpdump-3.4.orig/print-ospf.c tcpdump-3.4/print-ospf.c
890 --- tcpdump-3.4.orig/print-ospf.c Sat Jul 3 17:50:45 1999
891 +++ tcpdump-3.4/print-ospf.c Sat Jul 3 17:58:06 1999
893 #include <netinet/in.h>
894 #include <netinet/in_systm.h>
895 #include <netinet/ip.h>
896 -#include <netinet/ip_var.h>
898 +#if ! __GLIBC__ >= 2
899 +# include <netinet/ip_var.h>
900 +# include <netinet/udp_var.h>
901 +# include <netinet/tcpip.h>
906 diff -urN tcpdump-3.4.orig/print-pim.c tcpdump-3.4/print-pim.c
907 --- tcpdump-3.4.orig/print-pim.c Sat Jul 3 17:50:45 1999
908 +++ tcpdump-3.4/print-pim.c Sat Jul 3 18:49:27 1999
910 #include <netinet/in.h>
911 #include <netinet/in_systm.h>
912 #include <netinet/ip.h>
913 -#include <netinet/ip_var.h>
914 #include <netinet/udp.h>
915 -#include <netinet/udp_var.h>
916 #include <netinet/tcp.h>
917 -#include <netinet/tcpip.h>
919 +#if ! __GLIBC__ >= 2
920 +# include <netinet/ip_var.h>
921 +# include <netinet/udp_var.h>
922 +# include <netinet/tcpip.h>
929 #include "interface.h"
930 #include "addrtoname.h"
932 +#define __u32 u_int32_t
933 +#define __u16 u_int16_t
934 +#define __u8 u_int8_t
937 pim_print(register const u_char *bp, register u_int len)
938 diff -urN tcpdump-3.4.orig/print-raw.c tcpdump-3.4/print-raw.c
939 --- tcpdump-3.4.orig/print-raw.c Sat Jul 3 17:50:45 1999
940 +++ tcpdump-3.4/print-raw.c Sat Jul 3 17:58:06 1999
942 #include <netinet/in_systm.h>
943 #include <netinet/ip.h>
944 #include <netinet/if_ether.h>
945 -#include <netinet/ip_var.h>
946 #include <netinet/udp.h>
947 -#include <netinet/udp_var.h>
948 #include <netinet/tcp.h>
949 -#include <netinet/tcpip.h>
951 +#if ! __GLIBC__ >= 2
952 +# include <netinet/ip_var.h>
953 +# include <netinet/udp_var.h>
954 +# include <netinet/tcpip.h>
959 diff -urN tcpdump-3.4.orig/print-rip.c tcpdump-3.4/print-rip.c
960 --- tcpdump-3.4.orig/print-rip.c Sat Jul 3 17:50:45 1999
961 +++ tcpdump-3.4/print-rip.c Sat Jul 3 17:58:06 1999
963 #include <netinet/in.h>
964 #include <netinet/in_systm.h>
965 #include <netinet/ip.h>
966 -#include <netinet/ip_var.h>
967 #include <netinet/udp.h>
968 -#include <netinet/udp_var.h>
970 +#if ! __GLIBC__ >= 2
971 +# include <netinet/ip_var.h>
972 +# include <netinet/udp_var.h>
973 +# include <netinet/tcpip.h>
978 diff -urN tcpdump-3.4.orig/print-sl.c tcpdump-3.4/print-sl.c
979 --- tcpdump-3.4.orig/print-sl.c Sat Jul 3 17:50:45 1999
980 +++ tcpdump-3.4/print-sl.c Sat Jul 3 17:58:06 1999
982 #include <sys/timeb.h>
983 #include <sys/file.h>
984 #include <sys/ioctl.h>
985 -#include <sys/mbuf.h>
986 +#include "./sys/mbuf.h"
987 #include <sys/socket.h>
991 #include <netinet/in_systm.h>
992 #include <netinet/ip.h>
993 #include <netinet/if_ether.h>
994 -#include <netinet/ip_var.h>
995 #include <netinet/udp.h>
996 -#include <netinet/udp_var.h>
997 #include <netinet/tcp.h>
998 -#include <netinet/tcpip.h>
1000 -#include <net/slcompress.h>
1001 -#include <net/slip.h>
1002 +#if ! __GLIBC__ >= 2
1003 +# include <netinet/ip_var.h>
1004 +# include <netinet/udp_var.h>
1005 +# include <netinet/tcpip.h>
1008 +#include "./net/slcompress.h"
1009 +#include "./net/slip.h"
1013 diff -urN tcpdump-3.4.orig/print-sunrpc.c tcpdump-3.4/print-sunrpc.c
1014 --- tcpdump-3.4.orig/print-sunrpc.c Sat Jul 3 17:50:45 1999
1015 +++ tcpdump-3.4/print-sunrpc.c Sat Jul 3 17:58:06 1999
1017 #include <netinet/if_ether.h>
1018 #include <netinet/in_systm.h>
1019 #include <netinet/ip.h>
1020 -#include <netinet/ip_var.h>
1022 +#if ! __GLIBC__ >= 2
1023 +# include <netinet/ip_var.h>
1024 +# include <netinet/udp_var.h>
1025 +# include <netinet/tcpip.h>
1028 #include <rpc/rpc.h>
1029 #ifdef HAVE_RPC_RPCENT_H
1030 diff -urN tcpdump-3.4.orig/print-tcp.c tcpdump-3.4/print-tcp.c
1031 --- tcpdump-3.4.orig/print-tcp.c Sat Jul 3 17:50:45 1999
1032 +++ tcpdump-3.4/print-tcp.c Sat Jul 3 17:58:06 1999
1034 #include <sys/param.h>
1035 #include <sys/time.h>
1037 +#if ! __GLIBC__ >= 2
1038 +# include <netinet/ip_var.h>
1039 +# include <netinet/udp_var.h>
1040 +# include <netinet/tcpip.h>
1042 +# define __FAVOR_BSD
1045 #include <netinet/in.h>
1046 #include <netinet/in_systm.h>
1047 #include <netinet/ip.h>
1048 -#include <netinet/ip_var.h>
1049 #include <netinet/tcp.h>
1050 -#include <netinet/tcpip.h>
1052 #ifdef HAVE_MEMORY_H
1058 -#include <netinet6/in6.h>
1059 -#include <netinet6/ipv6.h>
1060 +# if __GLIBC__ >= 2
1061 +# include <netinet/ip6.h>
1063 +# include <netinet6/in6.h>
1064 +# include <netinet6/ipv6.h>
1069 diff -urN tcpdump-3.4.orig/print-tr.c tcpdump-3.4/print-tr.c
1070 --- tcpdump-3.4.orig/print-tr.c Sat Jul 3 17:50:45 1999
1071 +++ tcpdump-3.4/print-tr.c Sat Jul 3 17:58:06 1999
1076 +#include <asm/types.h>
1077 #include <netinet/in.h>
1078 #include <netinet/if_tr.h>
1079 #include <netinet/if_ether.h> /* just to get ETHERMTU */
1080 #include <netinet/in_systm.h>
1081 #include <netinet/ip.h>
1082 -#include <netinet/ip_var.h>
1083 #include <netinet/udp.h>
1084 -#include <netinet/udp_var.h>
1085 #include <netinet/tcp.h>
1086 -#include <netinet/tcpip.h>
1088 +#if ! __GLIBC__ >= 2
1089 +# include <netinet/ip_var.h>
1090 +# include <netinet/udp_var.h>
1091 +# include <netinet/tcpip.h>
1096 diff -urN tcpdump-3.4.orig/print-udp.c tcpdump-3.4/print-udp.c
1097 --- tcpdump-3.4.orig/print-udp.c Sat Jul 3 17:50:45 1999
1098 +++ tcpdump-3.4/print-udp.c Sat Jul 3 17:58:06 1999
1100 #include <sys/time.h>
1101 #include <sys/socket.h>
1103 +#if ! __GLIBC__ >= 2
1104 +# include <netinet/ip_var.h>
1105 +# include <netinet/udp_var.h>
1106 +# include <netinet/tcpip.h>
1108 +# define __FAVOR_BSD
1111 #include <netinet/in.h>
1112 #include <netinet/in_systm.h>
1113 #include <netinet/ip.h>
1114 -#include <netinet/ip_var.h>
1115 #include <netinet/udp.h>
1116 -#include <netinet/udp_var.h>
1119 -#include <netinet6/in6.h>
1120 -#include <netinet6/ipv6.h>
1121 +# if __GLIBC__ >= 2
1122 +# include <netinet/ip6.h>
1124 +# include <netinet6/in6.h>
1125 +# include <netinet6/ipv6.h>
1130 diff -urN tcpdump-3.4.orig/tcpdump.c tcpdump-3.4/tcpdump.c
1131 --- tcpdump-3.4.orig/tcpdump.c Sat Jul 3 17:50:45 1999
1132 +++ tcpdump-3.4/tcpdump.c Sat Jul 3 17:58:06 1999
1134 static struct printer printers[] = {
1135 { ether_if_print, DLT_EN10MB },
1136 { tr_if_print, DLT_IEEE802 },
1137 - { sl_if_print, DLT_SLIP },
1138 - { sl_bsdos_if_print, DLT_SLIP_BSDOS },
1139 +/* { sl_if_print, DLT_SLIP }, */
1140 +/* { sl_bsdos_if_print, DLT_SLIP_BSDOS }, */
1141 { ppp_if_print, DLT_PPP },
1142 { ppp_bsdos_if_print, DLT_PPP_BSDOS },
1143 { fddi_if_print, DLT_FDDI },
1144 diff -urN tcpdump-3.4.orig/xxx tcpdump-3.4/xxx
1145 --- tcpdump-3.4.orig/xxx Thu Jan 1 01:00:00 1970
1146 +++ tcpdump-3.4/xxx Sat Jul 3 17:58:06 1999
1148 +#if ! __GLIBC__ >= 2
1149 +# include <netinet/ip_var.h>
1150 +# include <netinet/udp_var.h>
1151 +# include <netinet/tcpip.h>