netfilter: nf_tables: ensure proper initialization of nft_pktinfo fields
[deliverable/linux.git] / net / netfilter / nf_tables_netdev.c
index 5eefe4a355c640cf85c8328740a877c6909880ba..8de502b0c37bc0c808452225455cd3e39ea062b6 100644 (file)
@@ -41,6 +41,7 @@ nft_netdev_set_pktinfo_ipv4(struct nft_pktinfo *pkt,
        else if (len < thoff)
                return;
 
+       pkt->tprot_set = true;
        pkt->tprot = iph->protocol;
        pkt->xt.thoff = thoff;
        pkt->xt.fragoff = ntohs(iph->frag_off) & IP_OFFSET;
@@ -74,6 +75,7 @@ __nft_netdev_set_pktinfo_ipv6(struct nft_pktinfo *pkt,
        if (protohdr < 0)
                 return;
 
+       pkt->tprot_set = true;
        pkt->tprot = protohdr;
        pkt->xt.thoff = thoff;
        pkt->xt.fragoff = frag_off;
@@ -102,7 +104,7 @@ nft_do_chain_netdev(void *priv, struct sk_buff *skb,
                nft_netdev_set_pktinfo_ipv6(&pkt, skb, state);
                break;
        default:
-               nft_set_pktinfo(&pkt, skb, state);
+               nft_set_pktinfo_unspec(&pkt, skb, state);
                break;
        }
 
This page took 0.025519 seconds and 5 git commands to generate.