]> git.pld-linux.org Git - packages/linux-libc-headers.git/blame - linux-libc-headers-partial-2.6.15.patch
- rel 12: update netfilter headers for frox to build (using copy of libiptc from...
[packages/linux-libc-headers.git] / linux-libc-headers-partial-2.6.15.patch
CommitLineData
94d29ca2
AM
1diff -urN linux-libc-headers-2.6.12.0.org/include/linux/inet_diag.h linux-libc-headers-2.6.12.0/include/linux/inet_diag.h
2--- linux-libc-headers-2.6.12.0.org/include/linux/inet_diag.h 1970-01-01 01:00:00.000000000 +0100
af7731e5 3+++ linux-libc-headers-2.6.12.0/include/linux/inet_diag.h 2006-01-10 22:04:30.029930500 +0100
94d29ca2
AM
4@@ -0,0 +1,121 @@
5+#ifndef _INET_DIAG_H_
6+#define _INET_DIAG_H_ 1
7+
8+/* Just some random number */
9+#define TCPDIAG_GETSOCK 18
10+#define DCCPDIAG_GETSOCK 19
11+
12+#define INET_DIAG_GETSOCK_MAX 24
13+
14+/* Socket identity */
15+struct inet_diag_sockid {
16+ __u16 idiag_sport;
17+ __u16 idiag_dport;
18+ __u32 idiag_src[4];
19+ __u32 idiag_dst[4];
20+ __u32 idiag_if;
21+ __u32 idiag_cookie[2];
22+#define INET_DIAG_NOCOOKIE (~0U)
23+};
24+
25+/* Request structure */
26+
27+struct inet_diag_req {
28+ __u8 idiag_family; /* Family of addresses. */
29+ __u8 idiag_src_len;
30+ __u8 idiag_dst_len;
31+ __u8 idiag_ext; /* Query extended information */
32+
33+ struct inet_diag_sockid id;
34+
35+ __u32 idiag_states; /* States to dump */
36+ __u32 idiag_dbs; /* Tables to dump (NI) */
37+};
38+
39+enum {
40+ INET_DIAG_REQ_NONE,
41+ INET_DIAG_REQ_BYTECODE,
42+};
43+
44+#define INET_DIAG_REQ_MAX INET_DIAG_REQ_BYTECODE
45+
46+/* Bytecode is sequence of 4 byte commands followed by variable arguments.
47+ * All the commands identified by "code" are conditional jumps forward:
48+ * to offset cc+"yes" or to offset cc+"no". "yes" is supposed to be
49+ * length of the command and its arguments.
50+ */
51+
52+struct inet_diag_bc_op {
53+ unsigned char code;
54+ unsigned char yes;
55+ unsigned short no;
56+};
57+
58+enum {
59+ INET_DIAG_BC_NOP,
60+ INET_DIAG_BC_JMP,
61+ INET_DIAG_BC_S_GE,
62+ INET_DIAG_BC_S_LE,
63+ INET_DIAG_BC_D_GE,
64+ INET_DIAG_BC_D_LE,
65+ INET_DIAG_BC_AUTO,
66+ INET_DIAG_BC_S_COND,
67+ INET_DIAG_BC_D_COND,
68+};
69+
70+struct inet_diag_hostcond {
71+ __u8 family;
72+ __u8 prefix_len;
73+ int port;
74+ __u32 addr[0];
75+};
76+
77+/* Base info structure. It contains socket identity (addrs/ports/cookie)
78+ * and, alas, the information shown by netstat. */
79+struct inet_diag_msg {
80+ __u8 idiag_family;
81+ __u8 idiag_state;
82+ __u8 idiag_timer;
83+ __u8 idiag_retrans;
84+
85+ struct inet_diag_sockid id;
86+
87+ __u32 idiag_expires;
88+ __u32 idiag_rqueue;
89+ __u32 idiag_wqueue;
90+ __u32 idiag_uid;
91+ __u32 idiag_inode;
92+};
93+
94+/* Extensions */
95+
96+enum {
97+ INET_DIAG_NONE,
98+ INET_DIAG_MEMINFO,
99+ INET_DIAG_INFO,
100+ INET_DIAG_VEGASINFO,
101+ INET_DIAG_CONG,
102+};
103+
104+#define INET_DIAG_MAX INET_DIAG_CONG
105+
106+
107+/* INET_DIAG_MEM */
108+
109+struct inet_diag_meminfo {
110+ __u32 idiag_rmem;
111+ __u32 idiag_wmem;
112+ __u32 idiag_fmem;
113+ __u32 idiag_tmem;
114+};
115+
116+/* INET_DIAG_VEGASINFO */
117+
118+struct tcpvegas_info {
119+ __u32 tcpv_enabled;
120+ __u32 tcpv_rttcnt;
121+ __u32 tcpv_rtt;
122+ __u32 tcpv_minrtt;
123+};
124+
125+#endif /* _INET_DIAG_H_ */
af7731e5
AM
126diff -urN linux-libc-headers-2.6.12.0.org/include/linux/netfilter_ipv4/ip_set.h linux-libc-headers-2.6.12.0/include/linux/netfilter_ipv4/ip_set.h
127--- linux-libc-headers-2.6.12.0.org/include/linux/netfilter_ipv4/ip_set.h 2006-01-10 22:03:59.272008000 +0100
128+++ linux-libc-headers-2.6.12.0/include/linux/netfilter_ipv4/ip_set.h 2006-01-10 22:04:30.029930500 +0100
129@@ -77,10 +77,12 @@
d16abf96
PS
130 #define IPSET_MATCH_INV 0x04 /* Inverse matching */
131
132 /*
133- * Set types (flavours)
134+ * Set features
135 */
136-#define IPSET_TYPE_IP 0 /* IP address type of set */
137-#define IPSET_TYPE_PORT 1 /* Port type of set */
138+#define IPSET_TYPE_IP 0x01 /* IP address type of set */
139+#define IPSET_TYPE_PORT 0x02 /* Port type of set */
140+#define IPSET_DATA_SINGLE 0x04 /* Single data storage */
141+#define IPSET_DATA_DOUBLE 0x08 /* Double data storage */
142
143 /* Reserved keywords */
144 #define IPSET_TOKEN_DEFAULT ":default:"
af7731e5 145@@ -336,8 +338,9 @@
d16abf96
PS
146 */
147 int (*testip_kernel) (struct ip_set *set,
148 const struct sk_buff * skb,
149- u_int32_t flags,
150- ip_set_ip_t *ip);
151+ ip_set_ip_t *ip,
152+ const u_int32_t *flags,
153+ unsigned char index);
154
155 /* test for IP in set (userspace: ipset -T set IP)
156 * return 0 if not in set, 1 if in set.
af7731e5 157@@ -368,8 +371,9 @@
d16abf96
PS
158 */
159 int (*addip_kernel) (struct ip_set *set,
160 const struct sk_buff * skb,
161- u_int32_t flags,
162- ip_set_ip_t *ip);
163+ ip_set_ip_t *ip,
164+ const u_int32_t *flags,
165+ unsigned char index);
166
167 /* remove IP from set (userspace: ipset -D set --entry x)
168 * Return -EEXIST if the address is NOT in the set,
af7731e5 169@@ -387,8 +391,9 @@
d16abf96
PS
170 */
171 int (*delip_kernel) (struct ip_set *set,
172 const struct sk_buff * skb,
173- u_int32_t flags,
174- ip_set_ip_t *ip);
175+ ip_set_ip_t *ip,
176+ const u_int32_t *flags,
177+ unsigned char index);
178
179 /* new set creation - allocated type specific items
180 */
af7731e5 181@@ -439,7 +444,7 @@
d16abf96
PS
182 void *data);
183
184 char typename[IP_SET_MAXNAMELEN];
185- char typecode;
186+ unsigned char features;
187 int protocol_version;
188
189 /* Set this to THIS_MODULE if you are a module, otherwise NULL */
af7731e5
AM
190diff -urN linux-libc-headers-2.6.12.0.org/include/linux/netfilter_ipv4/ip_set_iphash.h linux-libc-headers-2.6.12.0/include/linux/netfilter_ipv4/ip_set_iphash.h
191--- linux-libc-headers-2.6.12.0.org/include/linux/netfilter_ipv4/ip_set_iphash.h 2006-01-10 22:03:59.272008000 +0100
192+++ linux-libc-headers-2.6.12.0/include/linux/netfilter_ipv4/ip_set_iphash.h 2006-01-10 22:04:30.029930500 +0100
d16abf96
PS
193@@ -8,12 +8,11 @@
194
195 struct ip_set_iphash {
196 ip_set_ip_t *members; /* the iphash proper */
197- uint32_t initval; /* initval for jhash_1word */
198- uint32_t prime; /* prime for double hashing */
199 uint32_t hashsize; /* hash size */
200 uint16_t probes; /* max number of probes */
201 uint16_t resize; /* resize factor in percent */
202 ip_set_ip_t netmask; /* netmask */
203+ void *initval[0]; /* initvals for jhash_1word */
204 };
205
206 struct ip_set_req_iphash_create {
af7731e5
AM
207diff -urN linux-libc-headers-2.6.12.0.org/include/linux/netfilter_ipv4/ip_set_ipmap.h linux-libc-headers-2.6.12.0/include/linux/netfilter_ipv4/ip_set_ipmap.h
208--- linux-libc-headers-2.6.12.0.org/include/linux/netfilter_ipv4/ip_set_ipmap.h 2006-01-10 22:03:59.284009000 +0100
209+++ linux-libc-headers-2.6.12.0/include/linux/netfilter_ipv4/ip_set_ipmap.h 2006-01-10 22:04:30.029930500 +0100
d16abf96
PS
210@@ -12,7 +12,7 @@
211 ip_set_ip_t last_ip; /* host byte order, included in range */
212 ip_set_ip_t netmask; /* subnet netmask */
213 ip_set_ip_t sizeid; /* size of set in IPs */
214- u_int16_t hosts; /* number of hosts in a subnet */
215+ ip_set_ip_t hosts; /* number of hosts in a subnet */
216 };
217
218 struct ip_set_req_ipmap_create {
af7731e5
AM
219diff -urN linux-libc-headers-2.6.12.0.org/include/linux/netfilter_ipv4/ip_set_ipporthash.h linux-libc-headers-2.6.12.0/include/linux/netfilter_ipv4/ip_set_ipporthash.h
220--- linux-libc-headers-2.6.12.0.org/include/linux/netfilter_ipv4/ip_set_ipporthash.h 1970-01-01 01:00:00.000000000 +0100
221+++ linux-libc-headers-2.6.12.0/include/linux/netfilter_ipv4/ip_set_ipporthash.h 2006-01-10 22:04:30.029930500 +0100
d16abf96
PS
222@@ -0,0 +1,33 @@
223+#ifndef __IP_SET_IPPORTHASH_H
224+#define __IP_SET_IPPORTHASH_H
225+
226+#include <linux/netfilter_ipv4/ip_set.h>
227+
228+#define SETTYPE_NAME "ipporthash"
229+#define MAX_RANGE 0x0000FFFF
230+#define INVALID_PORT (MAX_RANGE + 1)
231+
232+struct ip_set_ipporthash {
233+ ip_set_ip_t *members; /* the ipporthash proper */
234+ uint32_t hashsize; /* hash size */
235+ uint16_t probes; /* max number of probes */
236+ uint16_t resize; /* resize factor in percent */
237+ ip_set_ip_t first_ip; /* host byte order, included in range */
238+ ip_set_ip_t last_ip; /* host byte order, included in range */
239+ void *initval[0]; /* initvals for jhash_1word */
240+};
241+
242+struct ip_set_req_ipporthash_create {
243+ uint32_t hashsize;
244+ uint16_t probes;
245+ uint16_t resize;
246+ ip_set_ip_t from;
247+ ip_set_ip_t to;
248+};
249+
250+struct ip_set_req_ipporthash {
251+ ip_set_ip_t ip;
252+ ip_set_ip_t port;
253+};
254+
255+#endif /* __IP_SET_IPPORTHASH_H */
af7731e5
AM
256diff -urN linux-libc-headers-2.6.12.0.org/include/linux/netfilter_ipv4/ip_set_nethash.h linux-libc-headers-2.6.12.0/include/linux/netfilter_ipv4/ip_set_nethash.h
257--- linux-libc-headers-2.6.12.0.org/include/linux/netfilter_ipv4/ip_set_nethash.h 2006-01-10 22:03:59.284009000 +0100
258+++ linux-libc-headers-2.6.12.0/include/linux/netfilter_ipv4/ip_set_nethash.h 2006-01-10 22:04:30.029930500 +0100
d16abf96
PS
259@@ -8,12 +8,11 @@
260
261 struct ip_set_nethash {
262 ip_set_ip_t *members; /* the nethash proper */
263- uint32_t initval; /* initval for jhash_1word */
264- uint32_t prime; /* prime for double hashing */
265 uint32_t hashsize; /* hash size */
266 uint16_t probes; /* max number of probes */
267 uint16_t resize; /* resize factor in percent */
268 unsigned char cidr[30]; /* CIDR sizes */
269+ void *initval[0]; /* initvals for jhash_1word */
270 };
271
272 struct ip_set_req_nethash_create {
af7731e5
AM
273diff -urN linux-libc-headers-2.6.12.0.org/include/linux/netlink.h linux-libc-headers-2.6.12.0/include/linux/netlink.h
274--- linux-libc-headers-2.6.12.0.org/include/linux/netlink.h 2006-01-10 22:03:59.296009000 +0100
275+++ linux-libc-headers-2.6.12.0/include/linux/netlink.h 2006-01-10 22:04:30.029930500 +0100
276@@ -8,18 +8,19 @@
277 #define NETLINK_SKIP 1 /* Reserved for ENskip */
278 #define NETLINK_USERSOCK 2 /* Reserved for user mode socket protocols */
279 #define NETLINK_FIREWALL 3 /* Firewalling hook */
280-#define NETLINK_TCPDIAG 4 /* TCP socket monitoring */
281+#define NETLINK_INET_DIAG 4 /* INET socket monitoring */
282 #define NETLINK_NFLOG 5 /* netfilter/iptables ULOG */
283 #define NETLINK_XFRM 6 /* ipsec */
284 #define NETLINK_SELINUX 7 /* SELinux event notifications */
285-#define NETLINK_ARPD 8
286+#define NETLINK_ISCSI 8 /* Open-ISCSI */
287 #define NETLINK_AUDIT 9 /* auditing */
288-#define NETLINK_NETFILTER 10 /* netfilter subsystem */
289-#define NETLINK_ROUTE6 11 /* af_inet6 route comm channel */
290+#define NETLINK_FIB_LOOKUP 10
291+#define NETLINK_CONNECTOR 11
292+#define NETLINK_NETFILTER 12 /* netfilter subsystem */
293 #define NETLINK_IP6_FW 13
294 #define NETLINK_DNRTMSG 14 /* DECnet routing messages */
295 #define NETLINK_KOBJECT_UEVENT 15 /* Kernel messages to userspace */
296-#define NETLINK_TAPBASE 16 /* 16 to 31 are ethertap */
297+#define NETLINK_GENERIC 16
298
299 #define MAX_LINKS 32
300
301diff -urN linux-libc-headers-2.6.12.0.org/include/linux/pkt_sched.h linux-libc-headers-2.6.12.0/include/linux/pkt_sched.h
302--- linux-libc-headers-2.6.12.0.org/include/linux/pkt_sched.h 2006-01-10 22:03:59.228005000 +0100
303+++ linux-libc-headers-2.6.12.0/include/linux/pkt_sched.h 2006-01-10 22:13:49.168874500 +0100
304@@ -459,6 +459,7 @@
305 TCA_NETEM_CORR,
306 TCA_NETEM_DELAY_DIST,
307 TCA_NETEM_REORDER,
308+ TCA_NETEM_CORRUPT,
309 __TCA_NETEM_MAX,
310 };
311
312@@ -487,6 +488,12 @@
313 __u32 correlation;
314 };
315
316+struct tc_netem_corrupt
317+{
318+ __u32 probability;
319+ __u32 correlation;
320+};
321+
322 #define NETEM_DIST_SCALE 8192
323
324 /* WRR section */
325diff -urN linux-libc-headers-2.6.12.0.org/include/linux/rtnetlink.h linux-libc-headers-2.6.12.0/include/linux/rtnetlink.h
326--- linux-libc-headers-2.6.12.0.org/include/linux/rtnetlink.h 2005-07-06 02:17:21.000000000 +0200
327+++ linux-libc-headers-2.6.12.0/include/linux/rtnetlink.h 2006-01-10 22:12:13.210877500 +0100
328@@ -89,6 +89,13 @@
329 RTM_GETANYCAST = 62,
330 #define RTM_GETANYCAST RTM_GETANYCAST
331
332+ RTM_NEWNEIGHTBL = 64,
333+#define RTM_NEWNEIGHTBL RTM_NEWNEIGHTBL
334+ RTM_GETNEIGHTBL = 66,
335+#define RTM_GETNEIGHTBL RTM_GETNEIGHTBL
336+ RTM_SETNEIGHTBL,
337+#define RTM_SETNEIGHTBL RTM_SETNEIGHTBL
338+
339 __RTM_MAX,
340 #define RTM_MAX (((__RTM_MAX + 3) & ~3) - 1)
341 };
342@@ -492,6 +499,106 @@
343 __u32 ndm_refcnt;
344 };
345
346+
347+/*****************************************************************
348+ * Neighbour tables specific messages.
349+ *
350+ * To retrieve the neighbour tables send RTM_GETNEIGHTBL with the
351+ * NLM_F_DUMP flag set. Every neighbour table configuration is
352+ * spread over multiple messages to avoid running into message
353+ * size limits on systems with many interfaces. The first message
354+ * in the sequence transports all not device specific data such as
355+ * statistics, configuration, and the default parameter set.
356+ * This message is followed by 0..n messages carrying device
357+ * specific parameter sets.
358+ * Although the ordering should be sufficient, NDTA_NAME can be
359+ * used to identify sequences. The initial message can be identified
360+ * by checking for NDTA_CONFIG. The device specific messages do
361+ * not contain this TLV but have NDTPA_IFINDEX set to the
362+ * corresponding interface index.
363+ *
364+ * To change neighbour table attributes, send RTM_SETNEIGHTBL
365+ * with NDTA_NAME set. Changeable attribute include NDTA_THRESH[1-3],
366+ * NDTA_GC_INTERVAL, and all TLVs in NDTA_PARMS unless marked
367+ * otherwise. Device specific parameter sets can be changed by
368+ * setting NDTPA_IFINDEX to the interface index of the corresponding
369+ * device.
370+ ****/
371+
372+struct ndt_stats
373+{
374+ __u64 ndts_allocs;
375+ __u64 ndts_destroys;
376+ __u64 ndts_hash_grows;
377+ __u64 ndts_res_failed;
378+ __u64 ndts_lookups;
379+ __u64 ndts_hits;
380+ __u64 ndts_rcv_probes_mcast;
381+ __u64 ndts_rcv_probes_ucast;
382+ __u64 ndts_periodic_gc_runs;
383+ __u64 ndts_forced_gc_runs;
384+};
385+
386+enum {
387+ NDTPA_UNSPEC,
388+ NDTPA_IFINDEX, /* u32, unchangeable */
389+ NDTPA_REFCNT, /* u32, read-only */
390+ NDTPA_REACHABLE_TIME, /* u64, read-only, msecs */
391+ NDTPA_BASE_REACHABLE_TIME, /* u64, msecs */
392+ NDTPA_RETRANS_TIME, /* u64, msecs */
393+ NDTPA_GC_STALETIME, /* u64, msecs */
394+ NDTPA_DELAY_PROBE_TIME, /* u64, msecs */
395+ NDTPA_QUEUE_LEN, /* u32 */
396+ NDTPA_APP_PROBES, /* u32 */
397+ NDTPA_UCAST_PROBES, /* u32 */
398+ NDTPA_MCAST_PROBES, /* u32 */
399+ NDTPA_ANYCAST_DELAY, /* u64, msecs */
400+ NDTPA_PROXY_DELAY, /* u64, msecs */
401+ NDTPA_PROXY_QLEN, /* u32 */
402+ NDTPA_LOCKTIME, /* u64, msecs */
403+ __NDTPA_MAX
404+};
405+#define NDTPA_MAX (__NDTPA_MAX - 1)
406+
407+struct ndtmsg
408+{
409+ __u8 ndtm_family;
410+ __u8 ndtm_pad1;
411+ __u16 ndtm_pad2;
412+};
413+
414+struct ndt_config
415+{
416+ __u16 ndtc_key_len;
417+ __u16 ndtc_entry_size;
418+ __u32 ndtc_entries;
419+ __u32 ndtc_last_flush; /* delta to now in msecs */
420+ __u32 ndtc_last_rand; /* delta to now in msecs */
421+ __u32 ndtc_hash_rnd;
422+ __u32 ndtc_hash_mask;
423+ __u32 ndtc_hash_chain_gc;
424+ __u32 ndtc_proxy_qlen;
425+};
426+
427+enum {
428+ NDTA_UNSPEC,
429+ NDTA_NAME, /* char *, unchangeable */
430+ NDTA_THRESH1, /* u32 */
431+ NDTA_THRESH2, /* u32 */
432+ NDTA_THRESH3, /* u32 */
433+ NDTA_CONFIG, /* struct ndt_config, read-only */
434+ NDTA_PARMS, /* nested TLV NDTPA_* */
435+ NDTA_STATS, /* struct ndt_stats, read-only */
436+ NDTA_GC_INTERVAL, /* u64, msecs */
437+ __NDTA_MAX
438+};
439+#define NDTA_MAX (__NDTA_MAX - 1)
440+
441+#define NDTA_RTA(r) ((struct rtattr*)(((char*)(r)) + \
442+ NLMSG_ALIGN(sizeof(struct ndtmsg))))
443+#define NDTA_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct ndtmsg))
444+
445+
446 /****
447 * General form of address family dependent message.
448 ****/
449diff -urN linux-libc-headers-2.6.12.0.org/include/linux/xfrm.h linux-libc-headers-2.6.12.0/include/linux/xfrm.h
450--- linux-libc-headers-2.6.12.0.org/include/linux/xfrm.h 2005-07-06 02:17:21.000000000 +0200
451+++ linux-libc-headers-2.6.12.0/include/linux/xfrm.h 2006-01-10 22:04:30.029930500 +0100
452@@ -174,6 +174,8 @@
453 XFRMA_ALG_COMP, /* struct xfrm_algo */
454 XFRMA_ENCAP, /* struct xfrm_algo + struct xfrm_encap_tmpl */
455 XFRMA_TMPL, /* 1 or more struct xfrm_user_tmpl */
456+ XFRMA_SA,
457+ XFRMA_POLICY,
458 __XFRMA_MAX
459
460 #define XFRMA_MAX (__XFRMA_MAX - 1)
461@@ -257,5 +259,6 @@
462
463 #define XFRMGRP_ACQUIRE 1
464 #define XFRMGRP_EXPIRE 2
465-
466+#define XFRMGRP_SA 4
467+#define XFRMGRP_POLICY 8
468 #endif /* _LINUX_XFRM_H */
This page took 0.077958 seconds and 4 git commands to generate.