diff options
| -rw-r--r-- | include/linux/netfilter/x_tables.h | 56 | ||||
| -rw-r--r-- | include/linux/netfilter_arp/arp_tables.h | 31 | ||||
| -rw-r--r-- | include/linux/netfilter_ipv4/ip_tables.h | 58 | ||||
| -rw-r--r-- | include/linux/netfilter_ipv6/ip6_tables.h | 57 | ||||
| -rw-r--r-- | include/net/tc_act/tc_ipt.h | 4 |
5 files changed, 66 insertions, 140 deletions
diff --git a/include/linux/netfilter/x_tables.h b/include/linux/netfilter/x_tables.h index bf71efb63007..1350e47b0234 100644 --- a/include/linux/netfilter/x_tables.h +++ b/include/linux/netfilter/x_tables.h | |||
| @@ -4,6 +4,62 @@ | |||
| 4 | #define XT_FUNCTION_MAXNAMELEN 30 | 4 | #define XT_FUNCTION_MAXNAMELEN 30 |
| 5 | #define XT_TABLE_MAXNAMELEN 32 | 5 | #define XT_TABLE_MAXNAMELEN 32 |
| 6 | 6 | ||
| 7 | struct xt_entry_match | ||
| 8 | { | ||
| 9 | union { | ||
| 10 | struct { | ||
| 11 | u_int16_t match_size; | ||
| 12 | |||
| 13 | /* Used by userspace */ | ||
| 14 | char name[XT_FUNCTION_MAXNAMELEN-1]; | ||
| 15 | |||
| 16 | u_int8_t revision; | ||
| 17 | } user; | ||
| 18 | struct { | ||
| 19 | u_int16_t match_size; | ||
| 20 | |||
| 21 | /* Used inside the kernel */ | ||
| 22 | struct xt_match *match; | ||
| 23 | } kernel; | ||
| 24 | |||
| 25 | /* Total length */ | ||
| 26 | u_int16_t match_size; | ||
| 27 | } u; | ||
| 28 | |||
| 29 | unsigned char data[0]; | ||
| 30 | }; | ||
| 31 | |||
| 32 | struct xt_entry_target | ||
| 33 | { | ||
| 34 | union { | ||
| 35 | struct { | ||
| 36 | u_int16_t target_size; | ||
| 37 | |||
| 38 | /* Used by userspace */ | ||
| 39 | char name[XT_FUNCTION_MAXNAMELEN-1]; | ||
| 40 | |||
| 41 | u_int8_t revision; | ||
| 42 | } user; | ||
| 43 | struct { | ||
| 44 | u_int16_t target_size; | ||
| 45 | |||
| 46 | /* Used inside the kernel */ | ||
| 47 | struct xt_target *target; | ||
| 48 | } kernel; | ||
| 49 | |||
| 50 | /* Total length */ | ||
| 51 | u_int16_t target_size; | ||
| 52 | } u; | ||
| 53 | |||
| 54 | unsigned char data[0]; | ||
| 55 | }; | ||
| 56 | |||
| 57 | struct xt_standard_target | ||
| 58 | { | ||
| 59 | struct xt_entry_target target; | ||
| 60 | int verdict; | ||
| 61 | }; | ||
| 62 | |||
| 7 | /* The argument to IPT_SO_GET_REVISION_*. Returns highest revision | 63 | /* The argument to IPT_SO_GET_REVISION_*. Returns highest revision |
| 8 | * kernel supports, if >= revision. */ | 64 | * kernel supports, if >= revision. */ |
| 9 | struct xt_get_revision | 65 | struct xt_get_revision |
diff --git a/include/linux/netfilter_arp/arp_tables.h b/include/linux/netfilter_arp/arp_tables.h index a27be05f67f0..62cc27daca4e 100644 --- a/include/linux/netfilter_arp/arp_tables.h +++ b/include/linux/netfilter_arp/arp_tables.h | |||
| @@ -65,35 +65,8 @@ struct arpt_arp { | |||
| 65 | u_int16_t invflags; | 65 | u_int16_t invflags; |
| 66 | }; | 66 | }; |
| 67 | 67 | ||
| 68 | struct arpt_entry_target | 68 | #define arpt_entry_target xt_entry_target |
| 69 | { | 69 | #define arpt_standard_target xt_standard_target |
| 70 | union { | ||
| 71 | struct { | ||
| 72 | u_int16_t target_size; | ||
| 73 | |||
| 74 | /* Used by userspace */ | ||
| 75 | char name[ARPT_FUNCTION_MAXNAMELEN-1]; | ||
| 76 | u_int8_t revision; | ||
| 77 | } user; | ||
| 78 | struct { | ||
| 79 | u_int16_t target_size; | ||
| 80 | |||
| 81 | /* Used inside the kernel */ | ||
| 82 | struct arpt_target *target; | ||
| 83 | } kernel; | ||
| 84 | |||
| 85 | /* Total length */ | ||
| 86 | u_int16_t target_size; | ||
| 87 | } u; | ||
| 88 | |||
| 89 | unsigned char data[0]; | ||
| 90 | }; | ||
| 91 | |||
| 92 | struct arpt_standard_target | ||
| 93 | { | ||
| 94 | struct arpt_entry_target target; | ||
| 95 | int verdict; | ||
| 96 | }; | ||
| 97 | 70 | ||
| 98 | /* Values for "flag" field in struct arpt_ip (general arp structure). | 71 | /* Values for "flag" field in struct arpt_ip (general arp structure). |
| 99 | * No flags defined yet. | 72 | * No flags defined yet. |
diff --git a/include/linux/netfilter_ipv4/ip_tables.h b/include/linux/netfilter_ipv4/ip_tables.h index ee262b5344e1..d5b8c0d6a12b 100644 --- a/include/linux/netfilter_ipv4/ip_tables.h +++ b/include/linux/netfilter_ipv4/ip_tables.h | |||
| @@ -52,61 +52,9 @@ struct ipt_ip { | |||
| 52 | u_int8_t invflags; | 52 | u_int8_t invflags; |
| 53 | }; | 53 | }; |
| 54 | 54 | ||
| 55 | struct ipt_entry_match | 55 | #define ipt_entry_match xt_entry_match |
| 56 | { | 56 | #define ipt_entry_target xt_entry_target |
| 57 | union { | 57 | #define ipt_standard_target xt_standard_target |
| 58 | struct { | ||
| 59 | u_int16_t match_size; | ||
| 60 | |||
| 61 | /* Used by userspace */ | ||
| 62 | char name[IPT_FUNCTION_MAXNAMELEN-1]; | ||
| 63 | |||
| 64 | u_int8_t revision; | ||
| 65 | } user; | ||
| 66 | struct { | ||
| 67 | u_int16_t match_size; | ||
| 68 | |||
| 69 | /* Used inside the kernel */ | ||
| 70 | struct ipt_match *match; | ||
| 71 | } kernel; | ||
| 72 | |||
| 73 | /* Total length */ | ||
| 74 | u_int16_t match_size; | ||
| 75 | } u; | ||
| 76 | |||
| 77 | unsigned char data[0]; | ||
| 78 | }; | ||
| 79 | |||
| 80 | struct ipt_entry_target | ||
| 81 | { | ||
| 82 | union { | ||
| 83 | struct { | ||
| 84 | u_int16_t target_size; | ||
| 85 | |||
| 86 | /* Used by userspace */ | ||
| 87 | char name[IPT_FUNCTION_MAXNAMELEN-1]; | ||
| 88 | |||
| 89 | u_int8_t revision; | ||
| 90 | } user; | ||
| 91 | struct { | ||
| 92 | u_int16_t target_size; | ||
| 93 | |||
| 94 | /* Used inside the kernel */ | ||
| 95 | struct ipt_target *target; | ||
| 96 | } kernel; | ||
| 97 | |||
| 98 | /* Total length */ | ||
| 99 | u_int16_t target_size; | ||
| 100 | } u; | ||
| 101 | |||
| 102 | unsigned char data[0]; | ||
| 103 | }; | ||
| 104 | |||
| 105 | struct ipt_standard_target | ||
| 106 | { | ||
| 107 | struct ipt_entry_target target; | ||
| 108 | int verdict; | ||
| 109 | }; | ||
| 110 | 58 | ||
| 111 | #define ipt_counters xt_counters | 59 | #define ipt_counters xt_counters |
| 112 | 60 | ||
diff --git a/include/linux/netfilter_ipv6/ip6_tables.h b/include/linux/netfilter_ipv6/ip6_tables.h index 7107f942eb05..d0d5d1ee4be3 100644 --- a/include/linux/netfilter_ipv6/ip6_tables.h +++ b/include/linux/netfilter_ipv6/ip6_tables.h | |||
| @@ -56,60 +56,9 @@ struct ip6t_ip6 { | |||
| 56 | u_int8_t invflags; | 56 | u_int8_t invflags; |
| 57 | }; | 57 | }; |
| 58 | 58 | ||
| 59 | /* FIXME: If alignment in kernel different from userspace? --RR */ | 59 | #define ip6t_entry_match xt_entry_match |
| 60 | struct ip6t_entry_match | 60 | #define ip6t_entry_target xt_entry_target |
| 61 | { | 61 | #define ip6t_standard_target xt_standard_target |
| 62 | union { | ||
| 63 | struct { | ||
| 64 | u_int16_t match_size; | ||
| 65 | |||
| 66 | /* Used by userspace */ | ||
| 67 | char name[IP6T_FUNCTION_MAXNAMELEN-1]; | ||
| 68 | u_int8_t revision; | ||
| 69 | } user; | ||
| 70 | struct { | ||
| 71 | u_int16_t match_size; | ||
| 72 | |||
| 73 | /* Used inside the kernel */ | ||
| 74 | struct ip6t_match *match; | ||
| 75 | } kernel; | ||
| 76 | |||
| 77 | /* Total length */ | ||
| 78 | u_int16_t match_size; | ||
| 79 | } u; | ||
| 80 | |||
| 81 | unsigned char data[0]; | ||
| 82 | }; | ||
| 83 | |||
| 84 | struct ip6t_entry_target | ||
| 85 | { | ||
| 86 | union { | ||
| 87 | struct { | ||
| 88 | u_int16_t target_size; | ||
| 89 | |||
| 90 | /* Used by userspace */ | ||
| 91 | char name[IP6T_FUNCTION_MAXNAMELEN-1]; | ||
| 92 | u_int8_t revision; | ||
| 93 | } user; | ||
| 94 | struct { | ||
| 95 | u_int16_t target_size; | ||
| 96 | |||
| 97 | /* Used inside the kernel */ | ||
| 98 | struct ip6t_target *target; | ||
| 99 | } kernel; | ||
| 100 | |||
| 101 | /* Total length */ | ||
| 102 | u_int16_t target_size; | ||
| 103 | } u; | ||
| 104 | |||
| 105 | unsigned char data[0]; | ||
| 106 | }; | ||
| 107 | |||
| 108 | struct ip6t_standard_target | ||
| 109 | { | ||
| 110 | struct ip6t_entry_target target; | ||
| 111 | int verdict; | ||
| 112 | }; | ||
| 113 | 62 | ||
| 114 | #define ip6t_counters xt_counters | 63 | #define ip6t_counters xt_counters |
| 115 | 64 | ||
diff --git a/include/net/tc_act/tc_ipt.h b/include/net/tc_act/tc_ipt.h index 02eccebd55ae..cb37ad08427f 100644 --- a/include/net/tc_act/tc_ipt.h +++ b/include/net/tc_act/tc_ipt.h | |||
| @@ -3,14 +3,14 @@ | |||
| 3 | 3 | ||
| 4 | #include <net/act_api.h> | 4 | #include <net/act_api.h> |
| 5 | 5 | ||
| 6 | struct ipt_entry_target; | 6 | struct xt_entry_target; |
| 7 | 7 | ||
| 8 | struct tcf_ipt | 8 | struct tcf_ipt |
| 9 | { | 9 | { |
| 10 | tca_gen(ipt); | 10 | tca_gen(ipt); |
| 11 | u32 hook; | 11 | u32 hook; |
| 12 | char *tname; | 12 | char *tname; |
| 13 | struct ipt_entry_target *t; | 13 | struct xt_entry_target *t; |
| 14 | }; | 14 | }; |
| 15 | 15 | ||
| 16 | #endif | 16 | #endif |
