Browse Source

netfilter: nf_tables: use skb->protocol instead of assuming ethernet header

Otherwise we may end up with incorrect network and transport header for
other protocols.

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Pablo Neira Ayuso 10 years ago
parent
commit
aa47e42c60
1 changed files with 1 additions and 1 deletions
  1. 1 1
      net/netfilter/nf_tables_netdev.c

+ 1 - 1
net/netfilter/nf_tables_netdev.c

@@ -94,7 +94,7 @@ nft_do_chain_netdev(void *priv, struct sk_buff *skb,
 {
 	struct nft_pktinfo pkt;
 
-	switch (eth_hdr(skb)->h_proto) {
+	switch (skb->protocol) {
 	case htons(ETH_P_IP):
 		nft_netdev_set_pktinfo_ipv4(&pkt, skb, state);
 		break;