diff options
author | Jan Engelhardt <jengelh@medozas.de> | 2009-02-18 12:39:31 -0500 |
---|---|---|
committer | Patrick McHardy <kaber@trash.net> | 2009-02-18 12:39:31 -0500 |
commit | cfac5ef7b92a2d504563989ecd0beb563920444b (patch) | |
tree | d0d7ef26dc3eeaf0ab72494814665a7c1565ebd3 /net/ipv6 | |
parent | 563d36eb3fb22dd04da9aa6f12e1b9ba0ac115f3 (diff) |
netfilter: Combine ipt_ttl and ip6t_hl source
Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Diffstat (limited to 'net/ipv6')
-rw-r--r-- | net/ipv6/netfilter/Kconfig | 9 | ||||
-rw-r--r-- | net/ipv6/netfilter/Makefile | 1 | ||||
-rw-r--r-- | net/ipv6/netfilter/ip6t_hl.c | 68 |
3 files changed, 0 insertions, 78 deletions
diff --git a/net/ipv6/netfilter/Kconfig b/net/ipv6/netfilter/Kconfig index 6a42a968c498..4a8d7ecd6d09 100644 --- a/net/ipv6/netfilter/Kconfig +++ b/net/ipv6/netfilter/Kconfig | |||
@@ -94,15 +94,6 @@ config IP6_NF_MATCH_OPTS | |||
94 | 94 | ||
95 | To compile it as a module, choose M here. If unsure, say N. | 95 | To compile it as a module, choose M here. If unsure, say N. |
96 | 96 | ||
97 | config IP6_NF_MATCH_HL | ||
98 | tristate '"hl" match support' | ||
99 | depends on NETFILTER_ADVANCED | ||
100 | help | ||
101 | HL matching allows you to match packets based on the hop | ||
102 | limit of the packet. | ||
103 | |||
104 | To compile it as a module, choose M here. If unsure, say N. | ||
105 | |||
106 | config IP6_NF_MATCH_IPV6HEADER | 97 | config IP6_NF_MATCH_IPV6HEADER |
107 | tristate '"ipv6header" IPv6 Extension Headers Match' | 98 | tristate '"ipv6header" IPv6 Extension Headers Match' |
108 | default m if NETFILTER_ADVANCED=n | 99 | default m if NETFILTER_ADVANCED=n |
diff --git a/net/ipv6/netfilter/Makefile b/net/ipv6/netfilter/Makefile index 61a4570d0ede..aafbba30c899 100644 --- a/net/ipv6/netfilter/Makefile +++ b/net/ipv6/netfilter/Makefile | |||
@@ -20,7 +20,6 @@ obj-$(CONFIG_NF_CONNTRACK_IPV6) += nf_conntrack_ipv6.o | |||
20 | obj-$(CONFIG_IP6_NF_MATCH_AH) += ip6t_ah.o | 20 | obj-$(CONFIG_IP6_NF_MATCH_AH) += ip6t_ah.o |
21 | obj-$(CONFIG_IP6_NF_MATCH_EUI64) += ip6t_eui64.o | 21 | obj-$(CONFIG_IP6_NF_MATCH_EUI64) += ip6t_eui64.o |
22 | obj-$(CONFIG_IP6_NF_MATCH_FRAG) += ip6t_frag.o | 22 | obj-$(CONFIG_IP6_NF_MATCH_FRAG) += ip6t_frag.o |
23 | obj-$(CONFIG_IP6_NF_MATCH_HL) += ip6t_hl.o | ||
24 | obj-$(CONFIG_IP6_NF_MATCH_IPV6HEADER) += ip6t_ipv6header.o | 23 | obj-$(CONFIG_IP6_NF_MATCH_IPV6HEADER) += ip6t_ipv6header.o |
25 | obj-$(CONFIG_IP6_NF_MATCH_MH) += ip6t_mh.o | 24 | obj-$(CONFIG_IP6_NF_MATCH_MH) += ip6t_mh.o |
26 | obj-$(CONFIG_IP6_NF_MATCH_OPTS) += ip6t_hbh.o | 25 | obj-$(CONFIG_IP6_NF_MATCH_OPTS) += ip6t_hbh.o |
diff --git a/net/ipv6/netfilter/ip6t_hl.c b/net/ipv6/netfilter/ip6t_hl.c deleted file mode 100644 index c964dca1132d..000000000000 --- a/net/ipv6/netfilter/ip6t_hl.c +++ /dev/null | |||
@@ -1,68 +0,0 @@ | |||
1 | /* Hop Limit matching module */ | ||
2 | |||
3 | /* (C) 2001-2002 Maciej Soltysiak <solt@dns.toxicfilms.tv> | ||
4 | * Based on HW's ttl module | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | */ | ||
10 | |||
11 | #include <linux/ipv6.h> | ||
12 | #include <linux/module.h> | ||
13 | #include <linux/skbuff.h> | ||
14 | |||
15 | #include <linux/netfilter_ipv6/ip6t_hl.h> | ||
16 | #include <linux/netfilter/x_tables.h> | ||
17 | |||
18 | MODULE_AUTHOR("Maciej Soltysiak <solt@dns.toxicfilms.tv>"); | ||
19 | MODULE_DESCRIPTION("Xtables: IPv6 Hop Limit field match"); | ||
20 | MODULE_LICENSE("GPL"); | ||
21 | |||
22 | static bool hl_mt6(const struct sk_buff *skb, const struct xt_match_param *par) | ||
23 | { | ||
24 | const struct ip6t_hl_info *info = par->matchinfo; | ||
25 | const struct ipv6hdr *ip6h = ipv6_hdr(skb); | ||
26 | |||
27 | switch (info->mode) { | ||
28 | case IP6T_HL_EQ: | ||
29 | return ip6h->hop_limit == info->hop_limit; | ||
30 | break; | ||
31 | case IP6T_HL_NE: | ||
32 | return ip6h->hop_limit != info->hop_limit; | ||
33 | break; | ||
34 | case IP6T_HL_LT: | ||
35 | return ip6h->hop_limit < info->hop_limit; | ||
36 | break; | ||
37 | case IP6T_HL_GT: | ||
38 | return ip6h->hop_limit > info->hop_limit; | ||
39 | break; | ||
40 | default: | ||
41 | printk(KERN_WARNING "ip6t_hl: unknown mode %d\n", | ||
42 | info->mode); | ||
43 | return false; | ||
44 | } | ||
45 | |||
46 | return false; | ||
47 | } | ||
48 | |||
49 | static struct xt_match hl_mt6_reg __read_mostly = { | ||
50 | .name = "hl", | ||
51 | .family = NFPROTO_IPV6, | ||
52 | .match = hl_mt6, | ||
53 | .matchsize = sizeof(struct ip6t_hl_info), | ||
54 | .me = THIS_MODULE, | ||
55 | }; | ||
56 | |||
57 | static int __init hl_mt6_init(void) | ||
58 | { | ||
59 | return xt_register_match(&hl_mt6_reg); | ||
60 | } | ||
61 | |||
62 | static void __exit hl_mt6_exit(void) | ||
63 | { | ||
64 | xt_unregister_match(&hl_mt6_reg); | ||
65 | } | ||
66 | |||
67 | module_init(hl_mt6_init); | ||
68 | module_exit(hl_mt6_exit); | ||