Commit 2f46e07995734a363608e974a82fd05d5b610750
Committed by
Pablo Neira Ayuso
1 parent
13ee6ac579
Exists in
master
and in
4 other branches
netfilter: ebtables: make broute table work again
broute table init hook sets up the "br_should_route_hook" pointer, which then gets called from br_input. commit a386f99025f13b32502fe5dedf223c20d7283826 (bridge: add proper RCU annotation to should_route_hook) introduced a typedef, and then changed this to: br_should_route_hook_t *rhook; [..] rhook = rcu_dereference(br_should_route_hook); if (*rhook(skb)) problem is that "br_should_route_hook" contains the address of the function, so calling *rhook() results in kernel panic. Signed-off-by: Florian Westphal <fw@strlen.de> Acked-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Showing 1 changed file with 1 additions and 1 deletions Side-by-side Diff
include/linux/if_bridge.h
... | ... | @@ -103,7 +103,7 @@ |
103 | 103 | |
104 | 104 | extern void brioctl_set(int (*ioctl_hook)(struct net *, unsigned int, void __user *)); |
105 | 105 | |
106 | -typedef int (*br_should_route_hook_t)(struct sk_buff *skb); | |
106 | +typedef int br_should_route_hook_t(struct sk_buff *skb); | |
107 | 107 | extern br_should_route_hook_t __rcu *br_should_route_hook; |
108 | 108 | |
109 | 109 | #endif |