enable -fno-strict-aliasing until the code base gets a hefty clean up to fix all...
[platform/upstream/net-tools.git] / lib / net-features.h
1 /*
2  * lib/net-features.h This file contains the definitions of all kernel
3  *                      dependend features.
4  *
5  * Version:     features.h 0.03 (1996-03-22)
6  *
7  * Author:      Bernd Eckenfels <net-tools@lina.inka.de>
8  *              Copyright 1996 Bernd Eckenfels, Germany
9  *
10  * Modifications:
11  *960201 {0.01} Bernd Eckenfels:        creation
12  *960202 {0.02} Bernd Eckenfels:        HW and AF added
13  *960322 {0.03} Bernd Eckenfels:        moved into the NET-LIB
14  *980630 {0.04} Arnaldo Carvalho de Melo: changed NLS for I18N
15  *
16  *              This program is free software; you can redistribute it
17  *              and/or  modify it under  the terms of  the GNU General
18  *              Public  License as  published  by  the  Free  Software
19  *              Foundation;  either  version 2 of the License, or  (at
20  *              your option) any later version.
21  */
22
23 /* 
24  *    This needs to be included AFTER the KErnel Header Files
25  *      one of the FEATURE_ should be defined to get the Feature Variable
26  *      definition included
27  */
28
29 #ifndef _NET_FEATURES_H
30 #define _NET_FEATURES_H
31
32 /* detect the present features */
33
34 #if defined (SIOCADDRTOLD) || defined (RTF_IRTT)        /* route */
35 #define HAVE_NEW_ADDRT 1
36 #endif
37
38 #ifdef RTF_IRTT                 /* route */
39 #define HAVE_RTF_IRTT 1
40 #endif
41
42 #ifdef RTF_REJECT               /* route */
43 #define HAVE_RTF_REJECT 1
44 #endif
45
46 /* compose the feature information string */
47
48 #if defined (FEATURE_ARP) || defined (FEATURE_ROUTE) || defined (FEATURE_NETSTAT)
49 static char *Features =
50
51 /* ---------------------------------------------------- */
52 #ifdef FEATURE_ROUTE
53
54 #if HAVE_NEW_ADDRT
55 "+"
56 #else
57 "-"
58 #endif
59 "NEW_ADDRT "
60
61 #if HAVE_RTF_IRTT
62 "+"
63 #else
64 "-"
65 #endif
66 "RTF_IRTT "
67
68 #if HAVE_RTF_REJECT
69 "+"
70 #else
71 "-"
72 #endif
73 "RTF_REJECT "
74
75 #endif                          /* FEATURE_ROUTE */
76 /* ---------------------------------------------------- */
77
78
79 /* ---------------------------------------------------- */
80 #ifdef FEATURE_NETSTAT
81
82 #if HAVE_NEW_ADDRT
83 "+"
84 #else
85 "-"
86 #endif
87 "NEW_ADDRT "
88
89 #if HAVE_RTF_IRTT
90 "+"
91 #else
92 "-"
93 #endif
94 "RTF_IRTT "
95
96 #if HAVE_RTF_REJECT
97 "+"
98 #else
99 "-"
100 #endif
101 "RTF_REJECT "
102
103 #if HAVE_FW_MASQUERADE
104 "+"
105 #else
106 "-"
107 #endif
108 "FW_MASQUERADE "
109
110 #endif                          /* FEATURE_NETSTAT */
111 /* ---------------------------------------------------- */
112
113
114 #if I18N
115 "+I18N"
116 #else
117 "-I18N"
118 #endif                          /* I18N */
119
120
121 "\nAF: "
122 #ifdef DFLT_AF
123 "(" DFLT_AF ")"
124 #endif
125
126 #if HAVE_AFUNIX
127 " +"
128 #else
129 " -"
130 #endif
131 "UNIX "
132 #if HAVE_AFINET
133 "+"
134 #else
135 "-"
136 #endif
137 "INET "
138 #if HAVE_AFINET6
139 "+"
140 #else
141 "-"
142 #endif
143 "INET6 "
144 #if HAVE_AFIPX
145 "+"
146 #else
147 "-"
148 #endif
149 "IPX "
150 #if HAVE_AFAX25
151 "+"
152 #else
153 "-"
154 #endif
155 "AX25 "
156 #if HAVE_AFNETROM
157 "+"
158 #else
159 "-"
160 #endif
161 "NETROM "
162 #if HAVE_AFX25
163 "+"
164 #else
165 "-"
166 #endif
167 "X25 "
168 #if HAVE_AFATALK
169 "+"
170 #else
171 "-"
172 #endif
173 "ATALK "
174 #if HAVE_AFECONET
175 "+"
176 #else
177 "-"
178 #endif
179 "ECONET "
180 #if HAVE_AFROSE
181 "+"
182 #else
183 "-"
184 #endif
185 "ROSE "
186
187 "\nHW: "
188
189 #ifdef DFLT_HW
190 "(" DFLT_HW ")"
191 #endif
192
193 #if HAVE_HWETHER
194 " +"
195 #else
196 " -"
197 #endif
198 "ETHER "
199 #if HAVE_HWARC
200 "+"
201 #else
202 "-"
203 #endif
204 "ARC "
205 #if HAVE_HWSLIP
206 "+"
207 #else
208 "-"
209 #endif
210 "SLIP "
211 #if HAVE_HWPPP
212 "+"
213 #else
214 "-"
215 #endif
216 "PPP "
217 #if HAVE_HWTUNNEL
218 "+"
219 #else
220 "-"
221 #endif
222 "TUNNEL "
223 #if HAVE_HWTR
224 "+"
225 #else
226 "-"
227 #endif
228 "TR "
229 #if HAVE_HWAX25
230 "+"
231 #else
232 "-"
233 #endif
234 "AX25 "
235
236 #if HAVE_HWNETROM
237 "+"
238 #else
239 "-"
240 #endif
241 "NETROM "
242
243 #if HAVE_HWX25
244 "+"
245 #else
246 "-"
247 #endif
248 "X25 "
249
250 #if HAVE_HWFR
251 "+"
252 #else
253 "-"
254 #endif
255 "FR "
256
257 #if HAVE_HWROSE
258 "+"
259 #else
260 "-"
261 #endif
262 "ROSE "
263
264 #if HAVE_HWASH
265 "+"
266 #else
267 "-"
268 #endif
269 "ASH "
270
271 #if HAVE_HWSIT
272 "+"
273 #else
274 "-"
275 #endif
276 "SIT "
277
278 #if HAVE_HWFDDI
279 "+"
280 #else
281 "-"
282 #endif
283 "FDDI "
284
285 #if HAVE_HWHIPPI
286 "+"
287 #else
288 "-"
289 #endif
290 "HIPPI "
291
292 #if HAVE_HWHDLCLAPB
293 "+"
294 #else
295 "-"
296 #endif
297 "HDLC/LAPB "
298
299 #if HAVE_HWEUI64
300 "+"
301 #else
302 "-"
303 #endif
304 "EUI64 "
305 ;
306
307
308 #endif                          /* FEATURE_* */
309
310 #endif                          /* _NET_FEATURES_H */
311 /* End of features.h */