Gentoo Archives: gentoo-commits

From: "Mike Frysinger (vapier)" <vapier@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo commit in src/patchsets/gentoo-headers/2.6.27: 0001-linux-timex.h-cleanup-for-userspace.patch 03_all_linux-export-aligned-64bits.patch 05_all_no-glibc-ifdefs.patch 07_all_pull-libc-headers-asm.patch 07_all_pull-libc-headers-linux.patch 09_all_include-other-linux-headers.patch
Date: Sun, 26 Oct 2008 11:08:11
Message-Id: E1Ku3Ab-0005kr-E5@stork.gentoo.org
1 vapier 08/10/26 10:48:29
2
3 Added: 0001-linux-timex.h-cleanup-for-userspace.patch
4 03_all_linux-export-aligned-64bits.patch
5 05_all_no-glibc-ifdefs.patch
6 07_all_pull-libc-headers-asm.patch
7 07_all_pull-libc-headers-linux.patch
8 09_all_include-other-linux-headers.patch
9 Log:
10 initial 2.6.27 patchset based on last 2.6.26 patchset
11
12 Revision Changes Path
13 1.1 src/patchsets/gentoo-headers/2.6.27/0001-linux-timex.h-cleanup-for-userspace.patch
14
15 file : http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/gentoo-headers/2.6.27/0001-linux-timex.h-cleanup-for-userspace.patch?rev=1.1&view=markup
16 plain: http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/gentoo-headers/2.6.27/0001-linux-timex.h-cleanup-for-userspace.patch?rev=1.1&content-type=text/plain
17
18 Index: 0001-linux-timex.h-cleanup-for-userspace.patch
19 ===================================================================
20 From 148ba13b19b2d99db59aacb1e936157e9c6358b8 Mon Sep 17 00:00:00 2001
21 From: Mike Frysinger <vapier@g.o>
22 Date: Sun, 26 Oct 2008 06:31:48 -0400
23 Subject: [PATCH] linux/timex.h: cleanup for userspace
24
25 Move all the kernel-specific defines and includes into the __KERNEL__
26 section so that they don't get leaked into userspace.
27
28 Signed-off-by: Mike Frysinger <vapier@g.o>
29 ---
30 include/linux/timex.h | 73 +++++++++++++++++++++++++------------------------
31 1 files changed, 37 insertions(+), 36 deletions(-)
32
33 diff --git a/include/linux/timex.h b/include/linux/timex.h
34 index 9007313..4bbbab5 100644
35 --- a/include/linux/timex.h
36 +++ b/include/linux/timex.h
37 @@ -53,47 +53,11 @@
38 #ifndef _LINUX_TIMEX_H
39 #define _LINUX_TIMEX_H
40
41 -#include <linux/compiler.h>
42 #include <linux/time.h>
43
44 -#include <asm/param.h>
45 -
46 #define NTP_API 4 /* NTP API version */
47
48 /*
49 - * SHIFT_KG and SHIFT_KF establish the damping of the PLL and are chosen
50 - * for a slightly underdamped convergence characteristic. SHIFT_KH
51 - * establishes the damping of the FLL and is chosen by wisdom and black
52 - * art.
53 - *
54 - * MAXTC establishes the maximum time constant of the PLL. With the
55 - * SHIFT_KG and SHIFT_KF values given and a time constant range from
56 - * zero to MAXTC, the PLL will converge in 15 minutes to 16 hours,
57 - * respectively.
58 - */
59 -#define SHIFT_PLL 4 /* PLL frequency factor (shift) */
60 -#define SHIFT_FLL 2 /* FLL frequency factor (shift) */
61 -#define MAXTC 10 /* maximum time constant (shift) */
62 -
63 -/*
64 - * SHIFT_USEC defines the scaling (shift) of the time_freq and
65 - * time_tolerance variables, which represent the current frequency
66 - * offset and maximum frequency tolerance.
67 - */
68 -#define SHIFT_USEC 16 /* frequency offset scale (shift) */
69 -#define PPM_SCALE (NSEC_PER_USEC << (NTP_SCALE_SHIFT - SHIFT_USEC))
70 -#define PPM_SCALE_INV_SHIFT 19
71 -#define PPM_SCALE_INV ((1ll << (PPM_SCALE_INV_SHIFT + NTP_SCALE_SHIFT)) / \
72 - PPM_SCALE + 1)
73 -
74 -#define MAXPHASE 500000000l /* max phase error (ns) */
75 -#define MAXFREQ 500000 /* max frequency error (ns/s) */
76 -#define MAXFREQ_SCALED ((s64)MAXFREQ << NTP_SCALE_SHIFT)
77 -#define MINSEC 256 /* min interval between updates (s) */
78 -#define MAXSEC 2048 /* max interval between updates (s) */
79 -#define NTP_PHASE_LIMIT ((MAXPHASE / NSEC_PER_USEC) << 5) /* beyond max. dispersion */
80 -
81 -/*
82 * syscall interface - used (mainly by NTP daemon)
83 * to discipline kernel clock oscillator
84 */
85 @@ -199,9 +163,46 @@ struct timex {
86 #define TIME_BAD TIME_ERROR /* bw compat */
87
88 #ifdef __KERNEL__
89 +#include <linux/compiler.h>
90 +#include <linux/types.h>
91 +
92 +#include <asm/param.h>
93 #include <asm/timex.h>
94
95 /*
96 + * SHIFT_KG and SHIFT_KF establish the damping of the PLL and are chosen
97 + * for a slightly underdamped convergence characteristic. SHIFT_KH
98 + * establishes the damping of the FLL and is chosen by wisdom and black
99 + * art.
100 + *
101 + * MAXTC establishes the maximum time constant of the PLL. With the
102 + * SHIFT_KG and SHIFT_KF values given and a time constant range from
103 + * zero to MAXTC, the PLL will converge in 15 minutes to 16 hours,
104 + * respectively.
105 + */
106 +#define SHIFT_PLL 4 /* PLL frequency factor (shift) */
107 +#define SHIFT_FLL 2 /* FLL frequency factor (shift) */
108 +#define MAXTC 10 /* maximum time constant (shift) */
109 +
110 +/*
111 + * SHIFT_USEC defines the scaling (shift) of the time_freq and
112 + * time_tolerance variables, which represent the current frequency
113 + * offset and maximum frequency tolerance.
114 + */
115 +#define SHIFT_USEC 16 /* frequency offset scale (shift) */
116 +#define PPM_SCALE (NSEC_PER_USEC << (NTP_SCALE_SHIFT - SHIFT_USEC))
117 +#define PPM_SCALE_INV_SHIFT 19
118 +#define PPM_SCALE_INV ((1ll << (PPM_SCALE_INV_SHIFT + NTP_SCALE_SHIFT)) / \
119 + PPM_SCALE + 1)
120 +
121 +#define MAXPHASE 500000000l /* max phase error (ns) */
122 +#define MAXFREQ 500000 /* max frequency error (ns/s) */
123 +#define MAXFREQ_SCALED ((s64)MAXFREQ << NTP_SCALE_SHIFT)
124 +#define MINSEC 256 /* min interval between updates (s) */
125 +#define MAXSEC 2048 /* max interval between updates (s) */
126 +#define NTP_PHASE_LIMIT ((MAXPHASE / NSEC_PER_USEC) << 5) /* beyond max. dispersion */
127 +
128 +/*
129 * kernel variables
130 * Note: maximum error = NTP synch distance = dispersion + delay / 2;
131 * estimated error = NTP dispersion.
132 --
133 1.6.0.2
134
135
136
137
138 1.1 src/patchsets/gentoo-headers/2.6.27/03_all_linux-export-aligned-64bits.patch
139
140 file : http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/gentoo-headers/2.6.27/03_all_linux-export-aligned-64bits.patch?rev=1.1&view=markup
141 plain: http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/gentoo-headers/2.6.27/03_all_linux-export-aligned-64bits.patch?rev=1.1&content-type=text/plain
142
143 Index: 03_all_linux-export-aligned-64bits.patch
144 ===================================================================
145 http://bugs.gentoo.org/204448
146
147 some headers rely on these aligned_* macros and they dont conflict with normal
148 userspace / libc types, so always export them regardless of the define
149 __KERNEL_STRICT_NAMES
150
151 --- include/linux/types.h
152 +++ include/linux/types.h
153 @@ -125,11 +125,6 @@
154 typedef __s64 int64_t;
155 #endif
156
157 -/* this is a special 64bit data type that is 8-byte aligned */
158 -#define aligned_u64 __u64 __attribute__((aligned(8)))
159 -#define aligned_be64 __be64 __attribute__((aligned(8)))
160 -#define aligned_le64 __le64 __attribute__((aligned(8)))
161 -
162 /**
163 * The type used for indexing onto a disc or disc partition.
164 *
165 @@ -161,6 +156,11 @@
166
167 #endif /* __KERNEL_STRICT_NAMES */
168
169 +/* this is a special 64bit data type that is 8-byte aligned */
170 +#define aligned_u64 __u64 __attribute__((aligned(8)))
171 +#define aligned_be64 __be64 __attribute__((aligned(8)))
172 +#define aligned_le64 __le64 __attribute__((aligned(8)))
173 +
174 /*
175 * Below are truly Linux-specific types that should never collide with
176 * any application/library that wants linux/types.h.
177
178
179
180 1.1 src/patchsets/gentoo-headers/2.6.27/05_all_no-glibc-ifdefs.patch
181
182 file : http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/gentoo-headers/2.6.27/05_all_no-glibc-ifdefs.patch?rev=1.1&view=markup
183 plain: http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/gentoo-headers/2.6.27/05_all_no-glibc-ifdefs.patch?rev=1.1&content-type=text/plain
184
185 Index: 05_all_no-glibc-ifdefs.patch
186 ===================================================================
187 only check KERNEL so we dont assume libc == glibc
188
189 --- a/include/linux/socket.h
190 +++ b/include/linux/socket.h
191 @@ -16,7 +16,7 @@ struct __kernel_sockaddr_storage {
192 /* _SS_MAXSIZE value minus size of ss_family */
193 } __attribute__ ((aligned(_K_SS_ALIGNSIZE))); /* force desired alignment */
194
195 -#if defined(__KERNEL__) || !defined(__GLIBC__) || (__GLIBC__ < 2)
196 +#ifdef __KERNEL__
197
198 #include <asm/socket.h> /* arch-dependent defines */
199 #include <linux/sockios.h> /* the SIOCxxx I/O controls */
200 --- a/include/linux/stat.h
201 +++ b/include/linux/stat.h
202 @@ -7,7 +7,7 @@
203
204 #endif
205
206 -#if defined(__KERNEL__) || !defined(__GLIBC__) || (__GLIBC__ < 2)
207 +#ifdef __KERNEL__
208
209 #define S_IFMT 00170000
210 #define S_IFSOCK 0140000
211
212
213
214 1.1 src/patchsets/gentoo-headers/2.6.27/07_all_pull-libc-headers-asm.patch
215
216 file : http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/gentoo-headers/2.6.27/07_all_pull-libc-headers-asm.patch?rev=1.1&view=markup
217 plain: http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/gentoo-headers/2.6.27/07_all_pull-libc-headers-asm.patch?rev=1.1&content-type=text/plain
218
219 Index: 07_all_pull-libc-headers-asm.patch
220 ===================================================================
221 pull in the libc versions of these headers so that the proper
222 userspace defines/typedefs are utilized
223
224 --- a/include/asm-generic/siginfo.h
225 +++ b/include/asm-generic/siginfo.h
226 @@ -1,6 +1,10 @@
227 #ifndef _ASM_GENERIC_SIGINFO_H
228 #define _ASM_GENERIC_SIGINFO_H
229
230 +#ifndef __KERNEL__
231 +# include <signal.h>
232 +#else
233 +
234 #include <linux/compiler.h>
235 #include <linux/types.h>
236
237 @@ -267,7 +271,6 @@ typedef struct sigevent {
238 #define sigev_notify_attributes _sigev_un._sigev_thread._attribute
239 #define sigev_notify_thread_id _sigev_un._tid
240
241 -#ifdef __KERNEL__
242
243 struct siginfo;
244 void do_schedule_next_timer(struct siginfo *info);
245
246
247
248 1.1 src/patchsets/gentoo-headers/2.6.27/07_all_pull-libc-headers-linux.patch
249
250 file : http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/gentoo-headers/2.6.27/07_all_pull-libc-headers-linux.patch?rev=1.1&view=markup
251 plain: http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/gentoo-headers/2.6.27/07_all_pull-libc-headers-linux.patch?rev=1.1&content-type=text/plain
252
253 Index: 07_all_pull-libc-headers-linux.patch
254 ===================================================================
255 pull in the libc versions of these headers so that the proper userspace
256 defines/typedefs are utilized.
257
258 the trouble here is that some of the linux/ headers define structs that the
259 libc net/ headers define (like the if.h header). we cannot simply say
260 "your program should not include linux/if.h when using net/if.h" because some
261 of the other linux/ headers may correctly be utilized with net/if.h but they
262 correctly include linux/if.h. we also cannot say "just use the linux/ headers
263 and not the libc net/ headers" because the libc headers include more
264 definitions than its kernel equivalent.
265
266 since there is no obvious (at least to me) answer here, we hack the linux/
267 headers to simply pull in userspace headers and ignore the linux/ ones
268 completely. this seems to give a proper clean userspace experience.
269
270 --- a/include/linux/types.h
271 +++ b/include/linux/types.h
272 @@ -8,6 +8,7 @@
273
274 #endif
275
276 +#include <sys/types.h>
277 #include <linux/posix_types.h>
278 #include <asm/types.h>
279
280 --- a/include/linux/socket.h
281 +++ b/include/linux/socket.h
282 @@ -303,4 +303,9 @@ extern int put_cmsg(struct msghdr*, int
283
284 #endif
285 #endif /* not kernel and not glibc */
286 +
287 +#ifndef __KERNEL__
288 +# include <sys/socket.h>
289 +#endif
290 +
291 #endif /* _LINUX_SOCKET_H */
292 --- a/include/linux/stat.h
293 +++ b/include/linux/stat.h
294 @@ -74,4 +74,8 @@ struct kstat {
295
296 #endif
297
298 +#ifndef __KERNEL__
299 +# include <sys/stat.h>
300 +#endif
301 +
302 #endif
303 --- a/include/linux/time.h
304 +++ b/include/linux/time.h
305 @@ -1,3 +1,9 @@
306 +#ifndef _LINUX_TIME_H
307 +# include <time.h>
308 +# include <sys/time.h>
309 +# define _LINUX_TIME_H
310 +#endif
311 +
312 #ifndef _LINUX_TIME_H
313 #define _LINUX_TIME_H
314
315 --- a/include/linux/if.h
316 +++ b/include/linux/if.h
317 @@ -19,6 +19,8 @@
318 #ifndef _LINUX_IF_H
319 #define _LINUX_IF_H
320
321 +#include <net/if.h>
322 +
323 #include <linux/types.h> /* for "__kernel_caddr_t" et al */
324 #include <linux/socket.h> /* for "struct sockaddr" et al */
325 #include <linux/compiler.h> /* for "__user" et al */
326 @@ -119,7 +121,7 @@ enum {
327 * being very small might be worth keeping for clean configuration.
328 */
329
330 -struct ifmap
331 +struct kernel_ifmap
332 {
333 unsigned long mem_start;
334 unsigned long mem_end;
335 @@ -155,7 +157,7 @@ struct if_settings
336 * remainder may be interface specific.
337 */
338
339 -struct ifreq
340 +struct kernel_ifreq
341 {
342 #define IFHWADDRLEN 6
343 union
344 @@ -205,7 +207,7 @@ struct ifreq
345 * must know all networks accessible).
346 */
347
348 -struct ifconf
349 +struct kernel_ifconf
350 {
351 int ifc_len; /* size of buffer */
352 union
353 --- a/include/linux/ip.h
354 +++ b/include/linux/ip.h
355 @@ -16,6 +16,7 @@
356 */
357 #ifndef _LINUX_IP_H
358 #define _LINUX_IP_H
359 +#include <netinet/ip.h>
360 #include <linux/types.h>
361 #include <asm/byteorder.h>
362
363 @@ -82,7 +83,7 @@
364
365 #define IPV4_BEET_PHMAXLEN 8
366
367 -struct iphdr {
368 +struct kernel_iphdr {
369 #if defined(__LITTLE_ENDIAN_BITFIELD)
370 __u8 ihl:4,
371 version:4;
372 --- a/include/linux/cdrom.h
373 +++ b/include/linux/cdrom.h
374 @@ -11,6 +11,10 @@
375 #ifndef _LINUX_CDROM_H
376 #define _LINUX_CDROM_H
377
378 +#ifndef __KERNEL__
379 +# include <limits.h>
380 +#endif
381 +
382 #include <asm/byteorder.h>
383
384 /*******************************************************
385 --- a/include/linux/in6.h
386 +++ b/include/linux/in6.h
387 @@ -21,13 +21,15 @@
388 #ifndef _LINUX_IN6_H
389 #define _LINUX_IN6_H
390
391 +#include <netinet/in.h>
392 +
393 #include <linux/types.h>
394
395 /*
396 * IPv6 address structure
397 */
398
399 -struct in6_addr
400 +struct kernel_in6_addr
401 {
402 union
403 {
404 @@ -35,9 +37,6 @@ struct in6_addr
405 __be16 u6_addr16[8];
406 __be32 u6_addr32[4];
407 } in6_u;
408 -#define s6_addr in6_u.u6_addr8
409 -#define s6_addr16 in6_u.u6_addr16
410 -#define s6_addr32 in6_u.u6_addr32
411 };
412
413 /* IPv6 Wildcard Address (::) and Loopback Address (::1) defined in RFC2553
414 @@ -57,7 +59,7 @@ extern const struct in6_addr in6addr_linklocal_allrouters;
415 extern const struct in6_addr in6addr_loopback;
416 #define IN6ADDR_LOOPBACK_INIT { { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } } }
417
418 -struct sockaddr_in6 {
419 +struct kernel_sockaddr_in6 {
420 unsigned short int sin6_family; /* AF_INET6 */
421 __be16 sin6_port; /* Transport layer port # */
422 __be32 sin6_flowinfo; /* IPv6 flow information */
423 @@ -65,7 +67,7 @@ struct sockaddr_in6 {
424 __u32 sin6_scope_id; /* scope id (new in RFC2553) */
425 };
426
427 -struct ipv6_mreq {
428 +struct kernel_ipv6_mreq {
429 /* IPv6 multicast address of group */
430 struct in6_addr ipv6mr_multiaddr;
431
432 --- a/include/linux/in.h
433 +++ b/include/linux/in.h
434 @@ -18,42 +18,88 @@
435 #ifndef _LINUX_IN_H
436 #define _LINUX_IN_H
437
438 +#include <netinet/in.h>
439 +
440 #include <linux/types.h>
441 #include <linux/socket.h>
442
443 /* Standard well-defined IP protocols. */
444 enum {
445 +#ifndef IPPROTO_IP
446 IPPROTO_IP = 0, /* Dummy protocol for TCP */
447 +#endif
448 +#ifndef IPPROTO_ICMP
449 IPPROTO_ICMP = 1, /* Internet Control Message Protocol */
450 +#endif
451 +#ifndef IPPROTO_IGMP
452 IPPROTO_IGMP = 2, /* Internet Group Management Protocol */
453 +#endif
454 +#ifndef IPPROTO_IPIP
455 IPPROTO_IPIP = 4, /* IPIP tunnels (older KA9Q tunnels use 94) */
456 +#endif
457 +#ifndef IPPROTO_TCP
458 IPPROTO_TCP = 6, /* Transmission Control Protocol */
459 +#endif
460 +#ifndef IPPROTO_EGP
461 IPPROTO_EGP = 8, /* Exterior Gateway Protocol */
462 +#endif
463 +#ifndef IPPROTO_PUP
464 IPPROTO_PUP = 12, /* PUP protocol */
465 +#endif
466 +#ifndef IPPROTO_UDP
467 IPPROTO_UDP = 17, /* User Datagram Protocol */
468 +#endif
469 +#ifndef IPPROTO_IDP
470 IPPROTO_IDP = 22, /* XNS IDP protocol */
471 +#endif
472 +#ifndef IPPROTO_DCCP
473 IPPROTO_DCCP = 33, /* Datagram Congestion Control Protocol */
474 +#endif
475 +#ifndef IPPROTO_RSVP
476 IPPROTO_RSVP = 46, /* RSVP protocol */
477 +#endif
478 +#ifndef IPPROTO_GRE
479 IPPROTO_GRE = 47, /* Cisco GRE tunnels (rfc 1701,1702) */
480 +#endif
481
482 +#ifndef IPPROTO_IPV6
483 IPPROTO_IPV6 = 41, /* IPv6-in-IPv4 tunnelling */
484 +#endif
485
486 +#ifndef IPPROTO_ESP
487 IPPROTO_ESP = 50, /* Encapsulation Security Payload protocol */
488 +#endif
489 +#ifndef IPPROTO_AH
490 IPPROTO_AH = 51, /* Authentication Header protocol */
491 +#endif
492 +#ifndef IPPROTO_BEETPH
493 IPPROTO_BEETPH = 94, /* IP option pseudo header for BEET */
494 +#endif
495 +#ifndef IPPROTO_PIM
496 IPPROTO_PIM = 103, /* Protocol Independent Multicast */
497 +#endif
498
499 +#ifndef IPPROTO_COMP
500 IPPROTO_COMP = 108, /* Compression Header protocol */
501 +#endif
502 +#ifndef IPPROTO_SCTP
503 IPPROTO_SCTP = 132, /* Stream Control Transport Protocol */
504 +#endif
505 +#ifndef IPPROTO_UDPLITE
506 IPPROTO_UDPLITE = 136, /* UDP-Lite (RFC 3828) */
507 +#endif
508
509 +#ifndef IPPROTO_RAW
510 IPPROTO_RAW = 255, /* Raw IP packets */
511 +#endif
512 +#if 0
513 IPPROTO_MAX
514 +#endif
515 };
516
517
518 /* Internet address. */
519 -struct in_addr {
520 +struct kernel_in_addr {
521 __be32 s_addr;
522 };
523
524 @@ -112,26 +158,26 @@ struct in_addr {
525
526 /* Request struct for multicast socket ops */
527
528 -struct ip_mreq
529 +struct kernel_ip_mreq
530 {
531 struct in_addr imr_multiaddr; /* IP multicast address of group */
532 struct in_addr imr_interface; /* local IP address of interface */
533 };
534
535 -struct ip_mreqn
536 +struct kernel_ip_mreqn
537 {
538 struct in_addr imr_multiaddr; /* IP multicast address of group */
539 struct in_addr imr_address; /* local IP address of interface */
540 int imr_ifindex; /* Interface index */
541 };
542
543 -struct ip_mreq_source {
544 +struct kernel_ip_mreq_source {
545 __be32 imr_multiaddr;
546 __be32 imr_interface;
547 __be32 imr_sourceaddr;
548 };
549
550 -struct ip_msfilter {
551 +struct kernel_ip_msfilter {
552 __be32 imsf_multiaddr;
553 __be32 imsf_interface;
554 __u32 imsf_fmode;
555 @@ -143,20 +189,20 @@ struct ip_msfilter {
556 (sizeof(struct ip_msfilter) - sizeof(__u32) \
557 + (numsrc) * sizeof(__u32))
558
559 -struct group_req
560 +struct kernel_group_req
561 {
562 __u32 gr_interface; /* interface index */
563 struct __kernel_sockaddr_storage gr_group; /* group address */
564 };
565
566 -struct group_source_req
567 +struct kernel_group_source_req
568 {
569 __u32 gsr_interface; /* interface index */
570 struct __kernel_sockaddr_storage gsr_group; /* group address */
571 struct __kernel_sockaddr_storage gsr_source; /* source address */
572 };
573
574 -struct group_filter
575 +struct kernel_group_filter
576 {
577 __u32 gf_interface; /* interface index */
578 struct __kernel_sockaddr_storage gf_group; /* multicast address */
579 @@ -169,7 +215,7 @@ struct group_filter
580 (sizeof(struct group_filter) - sizeof(struct __kernel_sockaddr_storage) \
581 + (numsrc) * sizeof(struct __kernel_sockaddr_storage))
582
583 -struct in_pktinfo
584 +struct kernel_in_pktinfo
585 {
586 int ipi_ifindex;
587 struct in_addr ipi_spec_dst;
588 @@ -178,7 +224,7 @@ struct in_pktinfo
589
590 /* Structure describing an Internet (IP) socket address. */
591 #define __SOCK_SIZE__ 16 /* sizeof(struct sockaddr) */
592 -struct sockaddr_in {
593 +struct kernel_sockaddr_in {
594 sa_family_t sin_family; /* Address family */
595 __be16 sin_port; /* Port number */
596 struct in_addr sin_addr; /* Internet address */
597
598
599
600 1.1 src/patchsets/gentoo-headers/2.6.27/09_all_include-other-linux-headers.patch
601
602 file : http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/gentoo-headers/2.6.27/09_all_include-other-linux-headers.patch?rev=1.1&view=markup
603 plain: http://sources.gentoo.org/viewcvs.py/gentoo/src/patchsets/gentoo-headers/2.6.27/09_all_include-other-linux-headers.patch?rev=1.1&content-type=text/plain
604
605 Index: 09_all_include-other-linux-headers.patch
606 ===================================================================
607 diff --git a/include/linux/atalk.h b/include/linux/atalk.h
608 index 75b8bac..c0b7727 100644
609 --- a/include/linux/atalk.h
610 +++ b/include/linux/atalk.h
611 @@ -2,6 +2,7 @@
612 #define __LINUX_ATALK_H__
613
614 #include <asm/byteorder.h>
615 +#include <linux/socket.h>
616
617 /*
618 * AppleTalk networking structures
619 diff --git a/include/linux/atm_zatm.h b/include/linux/atm_zatm.h
620 index 10f0fa2..ca03fef 100644
621 --- a/include/linux/atm_zatm.h
622 +++ b/include/linux/atm_zatm.h
623 @@ -12,6 +12,7 @@
624 * sys/types.h for struct timeval
625 */
626
627 +#include <linux/time.h>
628 #include <linux/atmapi.h>
629 #include <linux/atmioc.h>
630
631 diff --git a/include/linux/auto_fs.h b/include/linux/auto_fs.h
632 index c21e597..9a5c539 100644
633 --- a/include/linux/auto_fs.h
634 +++ b/include/linux/auto_fs.h
635 @@ -16,10 +16,10 @@
636
637 #ifdef __KERNEL__
638 #include <linux/fs.h>
639 -#include <linux/limits.h>
640 #include <asm/types.h>
641 #endif /* __KERNEL__ */
642
643 +#include <linux/limits.h>
644 #include <linux/ioctl.h>
645
646 /* This file describes autofs v3 */
647 diff --git a/include/linux/auto_fs4.h b/include/linux/auto_fs4.h
648 index 0a6bc52..ce9c79c 100644
649 --- a/include/linux/auto_fs4.h
650 +++ b/include/linux/auto_fs4.h
651 @@ -11,6 +11,8 @@
652 #ifndef _LINUX_AUTO_FS4_H
653 #define _LINUX_AUTO_FS4_H
654
655 +#include <linux/types.h>
656 +
657 /* Include common v3 definitions */
658 #include <linux/auto_fs.h>
659
660 diff --git a/include/linux/bfs_fs.h b/include/linux/bfs_fs.h
661 index 8ed6dfd..2ca3e8f 100644
662 --- a/include/linux/bfs_fs.h
663 +++ b/include/linux/bfs_fs.h
664 @@ -6,6 +6,8 @@
665 #ifndef _LINUX_BFS_FS_H
666 #define _LINUX_BFS_FS_H
667
668 +#include <linux/types.h>
669 +
670 #define BFS_BSIZE_BITS 9
671 #define BFS_BSIZE (1<<BFS_BSIZE_BITS)
672
673 diff --git a/include/linux/cm4000_cs.h b/include/linux/cm4000_cs.h
674 index 605ebe2..8d95b2f 100644
675 --- a/include/linux/cm4000_cs.h
676 +++ b/include/linux/cm4000_cs.h
677 @@ -1,6 +1,9 @@
678 #ifndef _CM4000_H_
679 #define _CM4000_H_
680
681 +#include <linux/types.h>
682 +#include <linux/ioctl.h>
683 +
684 #define MAX_ATR 33
685
686 #define CM4000_MAX_DEV 4
687 diff --git a/include/linux/dn.h b/include/linux/dn.h
688 index 10b6a6f..9a13dd6 100644
689 --- a/include/linux/dn.h
690 +++ b/include/linux/dn.h
691 @@ -7,6 +7,9 @@
692
693 */
694
695 +#include <linux/ioctl.h>
696 +#include <linux/types.h>
697 +
698 /*
699 * DNPROTO_NSP can't be the same as SOL_SOCKET,
700 * so increment each by one (compared to ULTRIX)
701 diff --git a/include/linux/efs_fs_sb.h b/include/linux/efs_fs_sb.h
702 index ff1945e..a742b29 100644
703 --- a/include/linux/efs_fs_sb.h
704 +++ b/include/linux/efs_fs_sb.h
705 @@ -10,6 +10,7 @@
706 #define __EFS_FS_SB_H__
707
708 #include <linux/magic.h>
709 +#include <linux/types.h>
710
711 /* EFS superblock magic numbers */
712 #define EFS_MAGIC 0x072959
713 diff --git a/include/linux/elfcore.h b/include/linux/elfcore.h
714 index 9631ddd..2d5484e 100644
715 --- a/include/linux/elfcore.h
716 +++ b/include/linux/elfcore.h
717 @@ -20,7 +20,6 @@ struct elf_siginfo
718 typedef elf_greg_t greg_t;
719 typedef elf_gregset_t gregset_t;
720 typedef elf_fpregset_t fpregset_t;
721 -typedef elf_fpxregset_t fpxregset_t;
722 #define NGREG ELF_NGREG
723 #endif
724
725 diff --git a/include/linux/errqueue.h b/include/linux/errqueue.h
726 index 92f8d4f..ceb1454 100644
727 --- a/include/linux/errqueue.h
728 +++ b/include/linux/errqueue.h
729 @@ -1,6 +1,8 @@
730 #ifndef _LINUX_ERRQUEUE_H
731 #define _LINUX_ERRQUEUE_H 1
732
733 +#include <linux/types.h>
734 +
735 struct sock_extended_err
736 {
737 __u32 ee_errno;
738 diff --git a/include/linux/gfs2_ondisk.h b/include/linux/gfs2_ondisk.h
739 index 8b7e4c1..e707cb5 100644
740 --- a/include/linux/gfs2_ondisk.h
741 +++ b/include/linux/gfs2_ondisk.h
742 @@ -10,6 +10,8 @@
743 #ifndef __GFS2_ONDISK_DOT_H__
744 #define __GFS2_ONDISK_DOT_H__
745
746 +#include <linux/types.h>
747 +
748 #define GFS2_MAGIC 0x01161970
749 #define GFS2_BASIC_BLOCK 512
750 #define GFS2_BASIC_BLOCK_SHIFT 9
751 diff --git a/include/linux/hdlc/ioctl.h b/include/linux/hdlc/ioctl.h
752 index 5839723..09dc723 100644
753 --- a/include/linux/hdlc/ioctl.h
754 +++ b/include/linux/hdlc/ioctl.h
755 @@ -1,6 +1,7 @@
756 #ifndef __HDLC_IOCTL_H__
757 #define __HDLC_IOCTL_H__
758
759 +#include <linux/if.h>
760
761 #define GENERIC_HDLC_VERSION 4 /* For synchronization with sethdlc utility */
762
763 diff --git a/include/linux/hiddev.h b/include/linux/hiddev.h
764 index acbdae6..3b35f72 100644
765 --- a/include/linux/hiddev.h
766 +++ b/include/linux/hiddev.h
767 @@ -29,6 +29,8 @@
768 * Vojtech Pavlik, Ucitelska 1576, Prague 8, 182 00 Czech Republic
769 */
770
771 +#include <linux/types.h>
772 +
773 /*
774 * The event structure itself
775 */
776 diff --git a/include/linux/if_fc.h b/include/linux/if_fc.h
777 index 376a34e..6ed7f1b 100644
778 --- a/include/linux/if_fc.h
779 +++ b/include/linux/if_fc.h
780 @@ -20,6 +20,7 @@
781 #ifndef _LINUX_IF_FC_H
782 #define _LINUX_IF_FC_H
783
784 +#include <linux/types.h>
785
786 #define FC_ALEN 6 /* Octets in one ethernet addr */
787 #define FC_HLEN (sizeof(struct fch_hdr)+sizeof(struct fcllc))
788 diff --git a/include/linux/if_ppp.h b/include/linux/if_ppp.h
789 index 768372f..b8d05b8 100644
790 --- a/include/linux/if_ppp.h
791 +++ b/include/linux/if_ppp.h
792 @@ -36,6 +36,9 @@
793 #define _IF_PPP_H_
794
795 #include <linux/compiler.h>
796 +#include <linux/if.h>
797 +#include <linux/ppp_defs.h>
798 +#include <linux/types.h>
799
800 /*
801 * Packet sizes
802 diff --git a/include/linux/ppp_defs.h b/include/linux/ppp_defs.h
803 index c6b13ff..a71510a 100644
804 --- a/include/linux/ppp_defs.h
805 +++ b/include/linux/ppp_defs.h
806 @@ -42,6 +42,8 @@
807 #ifndef _PPP_DEFS_H_
808 #define _PPP_DEFS_H_
809
810 +#include <linux/types.h>
811 +
812 /*
813 * The basic PPP frame.
814 */
815 diff --git a/include/linux/if_strip.h b/include/linux/if_strip.h
816 index fb5c5c9..6526a62 100644
817 --- a/include/linux/if_strip.h
818 +++ b/include/linux/if_strip.h
819 @@ -18,6 +18,8 @@
820 #ifndef __LINUX_STRIP_H
821 #define __LINUX_STRIP_H
822
823 +#include <linux/types.h>
824 +
825 typedef struct {
826 __u8 c[6];
827 } MetricomAddress;
828 diff --git a/include/linux/if_tunnel.h b/include/linux/if_tunnel.h
829 index 660b501..3331fc4 100644
830 --- a/include/linux/if_tunnel.h
831 +++ b/include/linux/if_tunnel.h
832 @@ -2,6 +2,9 @@
833 #define _IF_TUNNEL_H_
834
835 #include <linux/types.h>
836 +#include <asm/byteorder.h>
837 +#include <linux/if.h>
838 +#include <linux/ip.h>
839
840 #define SIOCGETTUNNEL (SIOCDEVPRIVATE + 0)
841 #define SIOCADDTUNNEL (SIOCDEVPRIVATE + 1)
842 diff --git a/include/linux/inet_diag.h b/include/linux/inet_diag.h
843 index 6e8bc54..bc8c490 100644
844 --- a/include/linux/inet_diag.h
845 +++ b/include/linux/inet_diag.h
846 @@ -1,6 +1,8 @@
847 #ifndef _INET_DIAG_H_
848 #define _INET_DIAG_H_ 1
849
850 +#include <linux/types.h>
851 +
852 /* Just some random number */
853 #define TCPDIAG_GETSOCK 18
854 #define DCCPDIAG_GETSOCK 19
855 diff --git a/include/linux/ipv6_route.h b/include/linux/ipv6_route.h
856 index b323ff5..d5865f0 100644
857 --- a/include/linux/ipv6_route.h
858 +++ b/include/linux/ipv6_route.h
859 @@ -13,6 +13,8 @@
860 #ifndef _LINUX_IPV6_ROUTE_H
861 #define _LINUX_IPV6_ROUTE_H
862
863 +#include <linux/in6.h>
864 +
865 #define RTF_DEFAULT 0x00010000 /* default - learned via ND */
866 #define RTF_ALLONLINK 0x00020000 /* (deprecated and will be removed)
867 fallback, no routers on link */
868 diff --git a/include/linux/ipx.h b/include/linux/ipx.h
869 index eb19b4e..22d379f 100644
870 --- a/include/linux/ipx.h
871 +++ b/include/linux/ipx.h
872 @@ -2,6 +2,7 @@
873 #define _IPX_H_
874 #include <linux/sockios.h>
875 #include <linux/socket.h>
876 +#include <linux/types.h>
877 #define IPX_NODE_LEN 6
878 #define IPX_MTU 576
879
880 diff --git a/include/linux/irda.h b/include/linux/irda.h
881 index 09d8f10..b41984f 100644
882 --- a/include/linux/irda.h
883 +++ b/include/linux/irda.h
884 @@ -31,6 +31,9 @@
885 * this one, or preferably to include <net/irda/irda.h> instead.
886 * Jean II */
887
888 +#include <linux/types.h>
889 +#include <linux/socket.h>
890 +
891 /* Hint bit positions for first hint byte */
892 #define HINT_PNP 0x01
893 #define HINT_PDA 0x02
894 diff --git a/include/linux/llc.h b/include/linux/llc.h
895 index 09f2e6d..f3a34ca 100644
896 --- a/include/linux/llc.h
897 +++ b/include/linux/llc.h
898 @@ -12,6 +12,10 @@
899 *
900 * See the GNU General Public License for more details.
901 */
902 +
903 +#include <linux/if.h>
904 +#include <linux/socket.h>
905 +
906 #define __LLC_SOCK_SIZE__ 16 /* sizeof(sockaddr_llc), word align. */
907 struct sockaddr_llc {
908 sa_family_t sllc_family; /* AF_LLC */
909 diff --git a/include/linux/minix_fs.h b/include/linux/minix_fs.h
910 index 916e8f7..bb33d11 100644
911 --- a/include/linux/minix_fs.h
912 +++ b/include/linux/minix_fs.h
913 @@ -2,6 +2,7 @@
914 #define _LINUX_MINIX_FS_H
915
916 #include <linux/magic.h>
917 +#include <linux/types.h>
918
919 /*
920 * The minix filesystem constants/structures
921 diff --git a/include/linux/netfilter/x_tables.h b/include/linux/netfilter/x_tables.h
922 index 022edfa..175741c 100644
923 --- a/include/linux/netfilter/x_tables.h
924 +++ b/include/linux/netfilter/x_tables.h
925 @@ -1,6 +1,8 @@
926 #ifndef _X_TABLES_H
927 #define _X_TABLES_H
928
929 +#include <linux/types.h>
930 +
931 #define XT_FUNCTION_MAXNAMELEN 30
932 #define XT_TABLE_MAXNAMELEN 32
933
934 diff --git a/include/linux/netrom.h b/include/linux/netrom.h
935 index 6939b32..af7313c 100644
936 --- a/include/linux/netrom.h
937 +++ b/include/linux/netrom.h
938 @@ -7,6 +7,8 @@
939 #ifndef NETROM_KERNEL_H
940 #define NETROM_KERNEL_H
941
942 +#include <linux/ax25.h>
943 +
944 #define NETROM_MTU 236
945
946 #define NETROM_T1 1
947 diff --git a/include/linux/nfs_idmap.h b/include/linux/nfs_idmap.h
948 index 15a9f3b..91a1c24 100644
949 --- a/include/linux/nfs_idmap.h
950 +++ b/include/linux/nfs_idmap.h
951 @@ -37,6 +37,8 @@
952 #ifndef NFS_IDMAP_H
953 #define NFS_IDMAP_H
954
955 +#include <linux/types.h>
956 +
957 /* XXX from bits/utmp.h */
958 #define IDMAP_NAMESZ 128
959
960 diff --git a/include/linux/nubus.h b/include/linux/nubus.h
961 index 870e66a..72c8774 100644
962 --- a/include/linux/nubus.h
963 +++ b/include/linux/nubus.h
964 @@ -12,6 +12,8 @@
965 #ifndef LINUX_NUBUS_H
966 #define LINUX_NUBUS_H
967
968 +#include <linux/types.h>
969 +
970 #ifdef __KERNEL__
971 #include <asm/nubus.h>
972 #endif
973 diff --git a/include/linux/pkt_cls.h b/include/linux/pkt_cls.h
974 index c3f01b3..762f048 100644
975 --- a/include/linux/pkt_cls.h
976 +++ b/include/linux/pkt_cls.h
977 @@ -2,6 +2,7 @@
978 #define __LINUX_PKT_CLS_H
979
980 #include <linux/pkt_sched.h>
981 +#include <linux/types.h>
982
983 /* I think i could have done better macros ; for now this is stolen from
984 * some arch/mips code - jhs
985 diff --git a/include/linux/pkt_sched.h b/include/linux/pkt_sched.h
986 index d10f353..2169d79 100644
987 --- a/include/linux/pkt_sched.h
988 +++ b/include/linux/pkt_sched.h
989 @@ -1,6 +1,8 @@
990 #ifndef __LINUX_PKT_SCHED_H
991 #define __LINUX_PKT_SCHED_H
992
993 +#include <linux/types.h>
994 +
995 /* Logical priority bands not depending on specific packet scheduler.
996 Every scheduler will map them to real traffic classes, if it has
997 no more precise mechanism to classify packets.
998 diff --git a/include/linux/random.h b/include/linux/random.h
999 index 01ad710..57195d0 100644
1000 --- a/include/linux/random.h
1001 +++ b/include/linux/random.h
1002 @@ -8,6 +8,7 @@
1003 #define _LINUX_RANDOM_H
1004
1005 #include <linux/ioctl.h>
1006 +#include <linux/types.h>
1007
1008 /* ioctl()'s for the random number generator */
1009
1010 diff --git a/include/linux/romfs_fs.h b/include/linux/romfs_fs.h
1011 index e20bbf9..1404f8d 100644
1012 --- a/include/linux/romfs_fs.h
1013 +++ b/include/linux/romfs_fs.h
1014 @@ -1,6 +1,8 @@
1015 #ifndef __LINUX_ROMFS_FS_H
1016 #define __LINUX_ROMFS_FS_H
1017
1018 +#include <linux/types.h>
1019 +
1020 /* The basic structures of the romfs filesystem */
1021
1022 #define ROMBSIZE BLOCK_SIZE
1023 diff --git a/include/linux/rose.h b/include/linux/rose.h
1024 index c7b4b18..5bcbba1 100644
1025 --- a/include/linux/rose.h
1026 +++ b/include/linux/rose.h
1027 @@ -7,6 +7,9 @@
1028 #ifndef ROSE_KERNEL_H
1029 #define ROSE_KERNEL_H
1030
1031 +#include <linux/socket.h>
1032 +#include <linux/ax25.h>
1033 +
1034 #define ROSE_MTU 251
1035
1036 #define ROSE_MAX_DIGIS 6
1037 diff --git a/include/linux/scc.h b/include/linux/scc.h
1038 index 3495bd9..d5916e5 100644
1039 --- a/include/linux/scc.h
1040 +++ b/include/linux/scc.h
1041 @@ -3,6 +3,7 @@
1042 #ifndef _SCC_H
1043 #define _SCC_H
1044
1045 +#include <linux/sockios.h>
1046
1047 /* selection of hardware types */
1048
1049 diff --git a/include/linux/selinux_netlink.h b/include/linux/selinux_netlink.h
1050 index bbf489d..faf9675 100644
1051 --- a/include/linux/selinux_netlink.h
1052 +++ b/include/linux/selinux_netlink.h
1053 @@ -12,6 +12,8 @@
1054 #ifndef _LINUX_SELINUX_NETLINK_H
1055 #define _LINUX_SELINUX_NETLINK_H
1056
1057 +#include <linux/types.h>
1058 +
1059 /* Message types. */
1060 #define SELNL_MSG_BASE 0x10
1061 enum {
1062 diff --git a/include/linux/synclink.h b/include/linux/synclink.h
1063 index c8b0426..ba59b6d 100644
1064 --- a/include/linux/synclink.h
1065 +++ b/include/linux/synclink.h
1066 @@ -11,6 +11,9 @@
1067
1068 #ifndef _SYNCLINK_H_
1069 #define _SYNCLINK_H_
1070 +
1071 +#include <linux/types.h>
1072 +
1073 #define SYNCLINK_H_VERSION 3.6
1074
1075 #define BOOLEAN int
1076 diff --git a/include/linux/un.h b/include/linux/un.h
1077 index 45561c5..77371f5 100644
1078 --- a/include/linux/un.h
1079 +++ b/include/linux/un.h
1080 @@ -1,6 +1,8 @@
1081 #ifndef _LINUX_UN_H
1082 #define _LINUX_UN_H
1083
1084 +#include <linux/socket.h>
1085 +
1086 #define UNIX_PATH_MAX 108
1087
1088 struct sockaddr_un {
1089 diff --git a/include/linux/video_decoder.h b/include/linux/video_decoder.h
1090 index 121e26d..e26c0c8 100644
1091 --- a/include/linux/video_decoder.h
1092 +++ b/include/linux/video_decoder.h
1093 @@ -1,6 +1,8 @@
1094 #ifndef _LINUX_VIDEO_DECODER_H
1095 #define _LINUX_VIDEO_DECODER_H
1096
1097 +#include <linux/types.h>
1098 +
1099 #define HAVE_VIDEO_DECODER 1
1100
1101 struct video_decoder_capability { /* this name is too long */
1102 diff --git a/include/linux/video_encoder.h b/include/linux/video_encoder.h
1103 index 4b0e690..b7b6423 100644
1104 --- a/include/linux/video_encoder.h
1105 +++ b/include/linux/video_encoder.h
1106 @@ -1,6 +1,8 @@
1107 #ifndef _LINUX_VIDEO_ENCODER_H
1108 #define _LINUX_VIDEO_ENCODER_H
1109
1110 +#include <linux/types.h>
1111 +
1112 struct video_encoder_capability { /* this name is too long */
1113 __u32 flags;
1114 #define VIDEO_ENCODER_PAL 1 /* can encode PAL signal */
1115 diff --git a/include/linux/x25.h b/include/linux/x25.h
1116 index d035e4e..00dcc34 100644
1117 --- a/include/linux/x25.h
1118 +++ b/include/linux/x25.h
1119 @@ -12,6 +12,7 @@
1120 #define X25_KERNEL_H
1121
1122 #include <linux/types.h>
1123 +#include <linux/socket.h>
1124
1125 #define SIOCX25GSUBSCRIP (SIOCPROTOPRIVATE + 0)
1126 #define SIOCX25SSUBSCRIP (SIOCPROTOPRIVATE + 1)
1127 diff --git a/include/linux/times.h b/include/linux/times.h
1128 index e2d3020..813446f 100644
1129 --- a/include/linux/times.h
1130 +++ b/include/linux/times.h
1131 @@ -2,6 +2,7 @@
1132 #define _LINUX_TIMES_H
1133
1134 #include <linux/types.h>
1135 +#include <linux/time.h>
1136
1137 struct tms {
1138 clock_t tms_utime;
1139 diff --git a/include/linux/ext2_fs.h b/include/linux/ext2_fs.h
1140 index 153d755..0f9cac0 100644
1141 --- a/include/linux/ext2_fs.h
1142 +++ b/include/linux/ext2_fs.h
1143 @@ -18,6 +18,7 @@
1144
1145 #include <linux/types.h>
1146 #include <linux/magic.h>
1147 +#include <linux/fs.h>
1148
1149 /*
1150 * The second extended filesystem constants/structures
1151 diff --git a/include/linux/isdn_divertif.h b/include/linux/isdn_divertif.h
1152 index 0e7e44c..ec61201 100644
1153 --- a/include/linux/isdn_divertif.h
1154 +++ b/include/linux/isdn_divertif.h
1155 @@ -10,6 +10,7 @@
1156 *
1157 */
1158
1159 +#include <linux/types.h>
1160
1161 /***********************************************************/
1162 /* magic value is also used to control version information */
1163 diff --git a/include/linux/nfsd/syscall.h b/include/linux/nfsd/syscall.h
1164 index 8bcddcc..a84b922 100644
1165 --- a/include/linux/nfsd/syscall.h
1166 +++ b/include/linux/nfsd/syscall.h
1167 @@ -10,10 +10,8 @@
1168 #define NFSD_SYSCALL_H
1169
1170 #include <asm/types.h>
1171 -#ifdef __KERNEL__
1172 -# include <linux/types.h>
1173 -# include <linux/in.h>
1174 -#endif
1175 +#include <linux/types.h>
1176 +#include <linux/in.h>
1177 #include <linux/posix_types.h>
1178 #include <linux/nfsd/const.h>
1179 #include <linux/nfsd/export.h>
1180 diff --git a/include/linux/if_pppol2tp.h b/include/linux/if_pppol2tp.h
1181 index a7d6a22..223c09d 100644
1182 --- a/include/linux/if_pppol2tp.h
1183 +++ b/include/linux/if_pppol2tp.h
1184 @@ -15,11 +15,8 @@
1185 #ifndef __LINUX_IF_PPPOL2TP_H
1186 #define __LINUX_IF_PPPOL2TP_H
1187
1188 -#include <asm/types.h>
1189 -
1190 -#ifdef __KERNEL__
1191 +#include <linux/types.h>
1192 #include <linux/in.h>
1193 -#endif
1194
1195 /* Structure used to connect() the socket to a particular tunnel UDP
1196 * socket.