netfilter: nf_tables: Pass struct net in nft_pktinfo
authorEric W. Biederman <ebiederm@xmission.com>
Fri, 18 Sep 2015 19:33:00 +0000 (14:33 -0500)
committerPablo Neira Ayuso <pablo@netfilter.org>
Fri, 18 Sep 2015 19:58:38 +0000 (21:58 +0200)
nft_pktinfo is passed on the stack so this does not bloat any in core
data structures.

By centrally computing this information this makes maintence of the code
simpler, and understading of the code easier.

Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
include/net/netfilter/nf_tables.h

index c0516529e8a0c9e2dde4e16b61343f41f1a6ce60..42e239e55aa3bf98a33f1dc0748f71daf8c42875 100644 (file)
@@ -14,6 +14,7 @@
 
 struct nft_pktinfo {
        struct sk_buff                  *skb;
+       struct net                      *net;
        const struct net_device         *in;
        const struct net_device         *out;
        u8                              pf;
@@ -30,7 +31,7 @@ static inline void nft_set_pktinfo(struct nft_pktinfo *pkt,
                                   const struct nf_hook_state *state)
 {
        pkt->skb = skb;
-       pkt->xt.net = state->net;
+       pkt->net = pkt->xt.net = state->net;
        pkt->in = pkt->xt.in = state->in;
        pkt->out = pkt->xt.out = state->out;
        pkt->hook = pkt->xt.hooknum = state->hook;