netfilter: nft_ct: add helper set support
authorFlorian Westphal <fw@strlen.de>
Wed, 8 Mar 2017 15:48:44 +0000 (16:48 +0100)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 13 Mar 2017 12:42:09 +0000 (13:42 +0100)
commit1a64edf54f55d7956cf5a0d95898bc1f84f9b818
tree3256d122501a216f23ab53975cdd891e86628d9c
parent84fba05511c8e0e1a6e6c8ec2c3c85616c39a8c1
netfilter: nft_ct: add helper set support

this allows to assign connection tracking helpers to
connections via nft objref infrastructure.

The idea is to first specifiy a helper object:

 table ip filter {
    ct helper some-name {
      type "ftp"
      protocol tcp
      l3proto ip
    }
 }

and then assign it via

nft add ... ct helper set "some-name"

helper assignment works for new conntracks only as we cannot expand the
conntrack extension area once it has been committed to the main conntrack
table.

ipv4 and ipv6 protocols are tracked stored separately so
we can also handle families that observe both ipv4 and ipv6 traffic.

Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
include/uapi/linux/netfilter/nf_tables.h
net/netfilter/nft_ct.c