Fri, 07 Sep 2012 19:08:07 +0200
Correct build configuration in Solaris subdir, correct english grammar,
remove irrelevant strip notice, introduce custom CFLAG logic, facilitate
use of Solaris Studio compiler with needed build configuration
adjustments, conditionally build 64 bit position independent code,
and accommodate tun(7) in newer Solaris releases by renaming driver
and module from conflicting 'tun' to 'vtun'. These changes include
some nonstandard 'I give up' logic causing out of tree builds by
manipulating the PATH, for example.
1 Index: configure.in
2 --- configure.in.orig 2010-03-12 02:56:44.000000000 +0100
3 +++ configure.in 2010-03-31 09:51:51.000000000 +0200
4 @@ -739,10 +739,10 @@
6 if test $ac_cv_func_pcap_lib_version = "no" ; then
7 AC_MSG_CHECKING(whether pcap_version is defined by libpcap)
8 - AC_TRY_LINK([],
9 + AC_TRY_LINK(
10 [
11 extern char pcap_version[];
12 -
13 + ],[
14 return (int)pcap_version;
15 ],
16 ac_lbl_cv_pcap_version_defined=yes,
17 @@ -755,10 +755,10 @@
18 fi
19 fi
20 AC_MSG_CHECKING(whether pcap_debug is defined by libpcap)
21 -AC_TRY_LINK([],
22 +AC_TRY_LINK(
23 [
24 extern int pcap_debug;
25 -
26 + ],[
27 return pcap_debug;
28 ],
29 ac_lbl_cv_pcap_debug_defined=yes,
30 @@ -772,10 +772,10 @@
31 # OK, what about "yydebug"?
32 #
33 AC_MSG_CHECKING(whether yydebug is defined by libpcap)
34 - AC_TRY_LINK([],
35 + AC_TRY_LINK(
36 [
37 extern int yydebug;
38 -
39 + ],[
40 return yydebug;
41 ],
42 ac_lbl_cv_yydebug_defined=yes,
43 Index: ether.h
44 --- ether.h.orig 2010-03-12 02:56:44.000000000 +0100
45 +++ ether.h 2010-03-31 09:51:51.000000000 +0200
46 @@ -34,7 +34,9 @@
47 * @(#)if_ether.h 8.3 (Berkeley) 5/2/95
48 */
50 +#ifndef ETHERMTU
51 #define ETHERMTU 1500
52 +#endif
54 /*
55 * The number of bytes in an ethernet (MAC) address.
56 @@ -44,7 +46,7 @@
57 /*
58 * Structure of a DEC/Intel/Xerox or 802.3 Ethernet header.
59 */
60 -struct ether_header {
61 +struct tcpdump_ether_header {
62 u_int8_t ether_dhost[ETHER_ADDR_LEN];
63 u_int8_t ether_shost[ETHER_ADDR_LEN];
64 u_int16_t ether_type;
65 Index: print-ether.c
66 --- print-ether.c.orig 2010-03-12 02:56:44.000000000 +0100
67 +++ print-ether.c 2010-03-31 09:55:05.000000000 +0200
68 @@ -86,10 +86,10 @@
69 static inline void
70 ether_hdr_print(register const u_char *bp, u_int length)
71 {
72 - register const struct ether_header *ep;
73 + register const struct tcpdump_ether_header *ep;
74 u_int16_t ether_type;
76 - ep = (const struct ether_header *)bp;
77 + ep = (const struct tcpdump_ether_header *)bp;
79 (void)printf("%s > %s",
80 etheraddr_string(ESRC(ep)),
81 @@ -123,7 +123,7 @@
82 ether_print(const u_char *p, u_int length, u_int caplen,
83 void (*print_encap_header)(const u_char *), const u_char *encap_header_arg)
84 {
85 - struct ether_header *ep;
86 + struct tcpdump_ether_header *ep;
87 u_int orig_length;
88 u_short ether_type;
89 u_short extracted_ether_type;
90 @@ -142,7 +142,7 @@
92 length -= ETHER_HDRLEN;
93 caplen -= ETHER_HDRLEN;
94 - ep = (struct ether_header *)p;
95 + ep = (struct tcpdump_ether_header *)p;
96 p += ETHER_HDRLEN;
98 ether_type = EXTRACT_16BITS(&ep->ether_type);
99 Index: print-fddi.c
100 --- print-fddi.c.orig 2010-03-12 02:56:44.000000000 +0100
101 +++ print-fddi.c 2010-03-31 09:51:51.000000000 +0200
102 @@ -242,7 +242,7 @@
103 fddi_print(const u_char *p, u_int length, u_int caplen)
104 {
105 const struct fddi_header *fddip = (const struct fddi_header *)p;
106 - struct ether_header ehdr;
107 + struct tcpdump_ether_header ehdr;
108 u_short extracted_ethertype;
110 if (caplen < FDDI_HDRLEN) {
111 Index: print-ipfc.c
112 --- print-ipfc.c.orig 2010-03-12 02:56:44.000000000 +0100
113 +++ print-ipfc.c 2010-03-31 09:51:51.000000000 +0200
114 @@ -81,7 +81,7 @@
115 ipfc_print(const u_char *p, u_int length, u_int caplen)
116 {
117 const struct ipfc_header *ipfcp = (const struct ipfc_header *)p;
118 - struct ether_header ehdr;
119 + struct tcpdump_ether_header ehdr;
120 u_short extracted_ethertype;
122 if (caplen < IPFC_HDRLEN) {
123 Index: print-rrcp.c
124 --- print-rrcp.c.orig 2010-03-12 02:56:44.000000000 +0100
125 +++ print-rrcp.c 2010-03-31 09:55:19.000000000 +0200
126 @@ -88,11 +88,11 @@
127 const u_char *rrcp;
128 u_int8_t rrcp_proto;
129 u_int8_t rrcp_opcode;
130 - register const struct ether_header *ep;
131 + register const struct tcpdump_ether_header *ep;
132 char proto_str[16];
133 char opcode_str[32];
135 - ep = (const struct ether_header *)cp;
136 + ep = (const struct tcpdump_ether_header *)cp;
137 rrcp = cp + ETHER_HDRLEN;
139 ND_TCHECK(*(rrcp + RRCP_PROTO_OFFSET));
140 Index: print-token.c
141 --- print-token.c.orig 2010-03-12 02:56:44.000000000 +0100
142 +++ print-token.c 2010-03-31 09:51:51.000000000 +0200
143 @@ -103,7 +103,7 @@
144 {
145 const struct token_header *trp;
146 u_short extracted_ethertype;
147 - struct ether_header ehdr;
148 + struct tcpdump_ether_header ehdr;
149 u_int route_len = 0, hdr_len = TOKEN_HDRLEN;
150 int seg;
152 Index: print-pflog.c
153 --- print-pflog.c.orig 2010-03-12 02:56:44.000000000 +0100
154 +++ print-pflog.c 2010-03-31 10:00:24.000000000 +0200
155 @@ -44,6 +44,7 @@
157 #include "interface.h"
158 #include "addrtoname.h"
159 +#include "extract.h"
161 static struct tok pf_reasons[] = {
162 { 0, "0(match)" },