Update header files from net-2.6.25
Signed-off-by: Stephen Hemminger <stephen.hemminger@vyatta.com>
This commit is contained in:
parent
4c7abb271b
commit
bfe594fe31
|
|
@ -36,4 +36,10 @@ enum nf_inet_hooks {
|
||||||
NF_INET_NUMHOOKS
|
NF_INET_NUMHOOKS
|
||||||
};
|
};
|
||||||
|
|
||||||
|
union nf_inet_addr {
|
||||||
|
u_int32_t all[4];
|
||||||
|
__be32 ip;
|
||||||
|
__be32 ip6[4];
|
||||||
|
};
|
||||||
|
|
||||||
#endif /*__LINUX_NETFILTER_H*/
|
#endif /*__LINUX_NETFILTER_H*/
|
||||||
|
|
|
||||||
|
|
@ -126,5 +126,48 @@ struct xt_counters_info
|
||||||
|
|
||||||
#define XT_INV_PROTO 0x40 /* Invert the sense of PROTO. */
|
#define XT_INV_PROTO 0x40 /* Invert the sense of PROTO. */
|
||||||
|
|
||||||
|
/* fn returns 0 to continue iteration */
|
||||||
|
#define XT_MATCH_ITERATE(type, e, fn, args...) \
|
||||||
|
({ \
|
||||||
|
unsigned int __i; \
|
||||||
|
int __ret = 0; \
|
||||||
|
struct xt_entry_match *__m; \
|
||||||
|
\
|
||||||
|
for (__i = sizeof(type); \
|
||||||
|
__i < (e)->target_offset; \
|
||||||
|
__i += __m->u.match_size) { \
|
||||||
|
__m = (void *)e + __i; \
|
||||||
|
\
|
||||||
|
__ret = fn(__m , ## args); \
|
||||||
|
if (__ret != 0) \
|
||||||
|
break; \
|
||||||
|
} \
|
||||||
|
__ret; \
|
||||||
|
})
|
||||||
|
|
||||||
|
/* fn returns 0 to continue iteration */
|
||||||
|
#define XT_ENTRY_ITERATE_CONTINUE(type, entries, size, n, fn, args...) \
|
||||||
|
({ \
|
||||||
|
unsigned int __i, __n; \
|
||||||
|
int __ret = 0; \
|
||||||
|
type *__entry; \
|
||||||
|
\
|
||||||
|
for (__i = 0, __n = 0; __i < (size); \
|
||||||
|
__i += __entry->next_offset, __n++) { \
|
||||||
|
__entry = (void *)(entries) + __i; \
|
||||||
|
if (__n < n) \
|
||||||
|
continue; \
|
||||||
|
\
|
||||||
|
__ret = fn(__entry , ## args); \
|
||||||
|
if (__ret != 0) \
|
||||||
|
break; \
|
||||||
|
} \
|
||||||
|
__ret; \
|
||||||
|
})
|
||||||
|
|
||||||
|
/* fn returns 0 to continue iteration */
|
||||||
|
#define XT_ENTRY_ITERATE(type, entries, size, fn, args...) \
|
||||||
|
XT_ENTRY_ITERATE_CONTINUE(type, entries, size, 0, fn, args)
|
||||||
|
|
||||||
|
|
||||||
#endif /* _X_TABLES_H */
|
#endif /* _X_TABLES_H */
|
||||||
|
|
|
||||||
|
|
@ -221,60 +221,12 @@ ipt_get_target(struct ipt_entry *e)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* fn returns 0 to continue iteration */
|
/* fn returns 0 to continue iteration */
|
||||||
#define IPT_MATCH_ITERATE(e, fn, args...) \
|
#define IPT_MATCH_ITERATE(e, fn, args...) \
|
||||||
({ \
|
XT_MATCH_ITERATE(struct ipt_entry, e, fn, ## args)
|
||||||
unsigned int __i; \
|
|
||||||
int __ret = 0; \
|
|
||||||
struct ipt_entry_match *__match; \
|
|
||||||
\
|
|
||||||
for (__i = sizeof(struct ipt_entry); \
|
|
||||||
__i < (e)->target_offset; \
|
|
||||||
__i += __match->u.match_size) { \
|
|
||||||
__match = (void *)(e) + __i; \
|
|
||||||
\
|
|
||||||
__ret = fn(__match , ## args); \
|
|
||||||
if (__ret != 0) \
|
|
||||||
break; \
|
|
||||||
} \
|
|
||||||
__ret; \
|
|
||||||
})
|
|
||||||
|
|
||||||
/* fn returns 0 to continue iteration */
|
/* fn returns 0 to continue iteration */
|
||||||
#define IPT_ENTRY_ITERATE(entries, size, fn, args...) \
|
#define IPT_ENTRY_ITERATE(entries, size, fn, args...) \
|
||||||
({ \
|
XT_ENTRY_ITERATE(struct ipt_entry, entries, size, fn, ## args)
|
||||||
unsigned int __i; \
|
|
||||||
int __ret = 0; \
|
|
||||||
struct ipt_entry *__entry; \
|
|
||||||
\
|
|
||||||
for (__i = 0; __i < (size); __i += __entry->next_offset) { \
|
|
||||||
__entry = (void *)(entries) + __i; \
|
|
||||||
\
|
|
||||||
__ret = fn(__entry , ## args); \
|
|
||||||
if (__ret != 0) \
|
|
||||||
break; \
|
|
||||||
} \
|
|
||||||
__ret; \
|
|
||||||
})
|
|
||||||
|
|
||||||
/* fn returns 0 to continue iteration */
|
|
||||||
#define IPT_ENTRY_ITERATE_CONTINUE(entries, size, n, fn, args...) \
|
|
||||||
({ \
|
|
||||||
unsigned int __i, __n; \
|
|
||||||
int __ret = 0; \
|
|
||||||
struct ipt_entry *__entry; \
|
|
||||||
\
|
|
||||||
for (__i = 0, __n = 0; __i < (size); \
|
|
||||||
__i += __entry->next_offset, __n++) { \
|
|
||||||
__entry = (void *)(entries) + __i; \
|
|
||||||
if (__n < n) \
|
|
||||||
continue; \
|
|
||||||
\
|
|
||||||
__ret = fn(__entry , ## args); \
|
|
||||||
if (__ret != 0) \
|
|
||||||
break; \
|
|
||||||
} \
|
|
||||||
__ret; \
|
|
||||||
})
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Main firewall chains definitions and global var's definitions.
|
* Main firewall chains definitions and global var's definitions.
|
||||||
|
|
|
||||||
|
|
@ -114,6 +114,7 @@ enum
|
||||||
XFRM_POLICY_IN = 0,
|
XFRM_POLICY_IN = 0,
|
||||||
XFRM_POLICY_OUT = 1,
|
XFRM_POLICY_OUT = 1,
|
||||||
XFRM_POLICY_FWD = 2,
|
XFRM_POLICY_FWD = 2,
|
||||||
|
XFRM_POLICY_MASK = 3,
|
||||||
XFRM_POLICY_MAX = 3
|
XFRM_POLICY_MAX = 3
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -328,6 +329,7 @@ struct xfrm_usersa_info {
|
||||||
#define XFRM_STATE_DECAP_DSCP 2
|
#define XFRM_STATE_DECAP_DSCP 2
|
||||||
#define XFRM_STATE_NOPMTUDISC 4
|
#define XFRM_STATE_NOPMTUDISC 4
|
||||||
#define XFRM_STATE_WILDRECV 8
|
#define XFRM_STATE_WILDRECV 8
|
||||||
|
#define XFRM_STATE_ICMP 16
|
||||||
};
|
};
|
||||||
|
|
||||||
struct xfrm_usersa_id {
|
struct xfrm_usersa_id {
|
||||||
|
|
@ -362,6 +364,8 @@ struct xfrm_userpolicy_info {
|
||||||
#define XFRM_POLICY_BLOCK 1
|
#define XFRM_POLICY_BLOCK 1
|
||||||
__u8 flags;
|
__u8 flags;
|
||||||
#define XFRM_POLICY_LOCALOK 1 /* Allow user to override global policy */
|
#define XFRM_POLICY_LOCALOK 1 /* Allow user to override global policy */
|
||||||
|
/* Automatically expand selector to include matching ICMP payloads. */
|
||||||
|
#define XFRM_POLICY_ICMP 2
|
||||||
__u8 share;
|
__u8 share;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue