diff options
author | Patrick McHardy <kaber@trash.net> | 2011-01-14 07:36:42 -0500 |
---|---|---|
committer | Patrick McHardy <kaber@trash.net> | 2011-01-14 07:36:42 -0500 |
commit | c7066f70d9610df0b9406cc635fc09e86136e714 (patch) | |
tree | ce98855b2c1ba2da15b7b47fc7a447d1903c4d89 /net/sched | |
parent | ae90bdeaeac6b964b7a1e853a90a19f358a9ac20 (diff) |
netfilter: fix Kconfig dependencies
Fix dependencies of netfilter realm match: it depends on NET_CLS_ROUTE,
which itself depends on NET_SCHED; this dependency is missing from netfilter.
Since matching on realms is also useful without having NET_SCHED enabled and
the option really only controls whether the tclassid member is included in
route and dst entries, rename the config option to IP_ROUTE_CLASSID and move
it outside of traffic scheduling context to get rid of the NET_SCHED dependeny.
Reported-by: Vladis Kletnieks <Valdis.Kletnieks@vt.edu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Diffstat (limited to 'net/sched')
-rw-r--r-- | net/sched/Kconfig | 5 | ||||
-rw-r--r-- | net/sched/cls_flow.c | 2 | ||||
-rw-r--r-- | net/sched/em_meta.c | 2 |
3 files changed, 3 insertions, 6 deletions
diff --git a/net/sched/Kconfig b/net/sched/Kconfig index a36270a994d7..4b753ef70bb7 100644 --- a/net/sched/Kconfig +++ b/net/sched/Kconfig | |||
@@ -243,7 +243,7 @@ config NET_CLS_TCINDEX | |||
243 | 243 | ||
244 | config NET_CLS_ROUTE4 | 244 | config NET_CLS_ROUTE4 |
245 | tristate "Routing decision (ROUTE)" | 245 | tristate "Routing decision (ROUTE)" |
246 | select NET_CLS_ROUTE | 246 | select IP_ROUTE_CLASSID |
247 | select NET_CLS | 247 | select NET_CLS |
248 | ---help--- | 248 | ---help--- |
249 | If you say Y here, you will be able to classify packets | 249 | If you say Y here, you will be able to classify packets |
@@ -252,9 +252,6 @@ config NET_CLS_ROUTE4 | |||
252 | To compile this code as a module, choose M here: the | 252 | To compile this code as a module, choose M here: the |
253 | module will be called cls_route. | 253 | module will be called cls_route. |
254 | 254 | ||
255 | config NET_CLS_ROUTE | ||
256 | bool | ||
257 | |||
258 | config NET_CLS_FW | 255 | config NET_CLS_FW |
259 | tristate "Netfilter mark (FW)" | 256 | tristate "Netfilter mark (FW)" |
260 | select NET_CLS | 257 | select NET_CLS |
diff --git a/net/sched/cls_flow.c b/net/sched/cls_flow.c index 5b271a18bc3a..a3b293d22c66 100644 --- a/net/sched/cls_flow.c +++ b/net/sched/cls_flow.c | |||
@@ -276,7 +276,7 @@ fallback: | |||
276 | 276 | ||
277 | static u32 flow_get_rtclassid(const struct sk_buff *skb) | 277 | static u32 flow_get_rtclassid(const struct sk_buff *skb) |
278 | { | 278 | { |
279 | #ifdef CONFIG_NET_CLS_ROUTE | 279 | #ifdef CONFIG_IP_ROUTE_CLASSID |
280 | if (skb_dst(skb)) | 280 | if (skb_dst(skb)) |
281 | return skb_dst(skb)->tclassid; | 281 | return skb_dst(skb)->tclassid; |
282 | #endif | 282 | #endif |
diff --git a/net/sched/em_meta.c b/net/sched/em_meta.c index 34da5e29ea1a..0d66e58f26d8 100644 --- a/net/sched/em_meta.c +++ b/net/sched/em_meta.c | |||
@@ -255,7 +255,7 @@ META_COLLECTOR(int_rtclassid) | |||
255 | if (unlikely(skb_dst(skb) == NULL)) | 255 | if (unlikely(skb_dst(skb) == NULL)) |
256 | *err = -1; | 256 | *err = -1; |
257 | else | 257 | else |
258 | #ifdef CONFIG_NET_CLS_ROUTE | 258 | #ifdef CONFIG_IP_ROUTE_CLASSID |
259 | dst->value = skb_dst(skb)->tclassid; | 259 | dst->value = skb_dst(skb)->tclassid; |
260 | #else | 260 | #else |
261 | dst->value = 0; | 261 | dst->value = 0; |