aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorStephen Hemminger <shemminger@osdl.org>2006-08-29 20:48:57 -0400
committerDavid S. Miller <davem@sunset.davemloft.net>2006-09-22 18:18:31 -0400
commit9bcfcaf5e9cc887eb39236e43bdbe4b4b2572229 (patch)
tree34d6369208bdd707a5e45bdf1972c94e3206b6e3 /include
parent07317621d004e8e6967f2dac8562825267e56135 (diff)
[NETFILTER] bridge: simplify nf_bridge_pad
Do some simple optimization on the nf_bridge_pad() function and don't use magic constants. Eliminate a double call and the #ifdef'd code for CONFIG_BRIDGE_NETFILTER. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r--include/linux/netfilter_bridge.h16
1 files changed, 5 insertions, 11 deletions
diff --git a/include/linux/netfilter_bridge.h b/include/linux/netfilter_bridge.h
index 274fe4b33155..9a4dd11af86e 100644
--- a/include/linux/netfilter_bridge.h
+++ b/include/linux/netfilter_bridge.h
@@ -5,9 +5,8 @@
5 */ 5 */
6 6
7#include <linux/netfilter.h> 7#include <linux/netfilter.h>
8#if defined(__KERNEL__) && defined(CONFIG_BRIDGE_NETFILTER)
9#include <linux/if_ether.h> 8#include <linux/if_ether.h>
10#endif 9#include <linux/if_vlan.h>
11 10
12/* Bridge Hooks */ 11/* Bridge Hooks */
13/* After promisc drops, checksum checks. */ 12/* After promisc drops, checksum checks. */
@@ -57,16 +56,10 @@ static inline int nf_bridge_maybe_copy_header(struct sk_buff *skb)
57 56
58/* This is called by the IP fragmenting code and it ensures there is 57/* This is called by the IP fragmenting code and it ensures there is
59 * enough room for the encapsulating header (if there is one). */ 58 * enough room for the encapsulating header (if there is one). */
60static inline 59static inline int nf_bridge_pad(const struct sk_buff *skb)
61int nf_bridge_pad(struct sk_buff *skb)
62{ 60{
63 if (skb->protocol == __constant_htons(ETH_P_IP)) 61 return (skb->nf_bridge && skb->protocol == htons(ETH_P_8021Q))
64 return 0; 62 ? VLAN_HLEN : 0;
65 if (skb->nf_bridge) {
66 if (skb->protocol == __constant_htons(ETH_P_8021Q))
67 return 4;
68 }
69 return 0;
70} 63}
71 64
72struct bridge_skb_cb { 65struct bridge_skb_cb {
@@ -78,6 +71,7 @@ struct bridge_skb_cb {
78extern int brnf_deferred_hooks; 71extern int brnf_deferred_hooks;
79#else 72#else
80#define nf_bridge_maybe_copy_header(skb) (0) 73#define nf_bridge_maybe_copy_header(skb) (0)
74#define nf_bridge_pad(skb) (0)
81#endif /* CONFIG_BRIDGE_NETFILTER */ 75#endif /* CONFIG_BRIDGE_NETFILTER */
82 76
83#endif /* __KERNEL__ */ 77#endif /* __KERNEL__ */