netfilter: add connlabel conntrack extension
authorFlorian Westphal <fw@strlen.de>
Fri, 11 Jan 2013 06:30:44 +0000 (06:30 +0000)
committerPablo Neira Ayuso <pablo@netfilter.org>
Thu, 17 Jan 2013 23:28:15 +0000 (00:28 +0100)
commitc539f01717c239cfa0921dd43927afc976f1eedc
treee0e4881913acb233f6ea83d93eb69da446084101
parent7266507d89991fa1e989283e4e032c6d9357fe26
netfilter: add connlabel conntrack extension

similar to connmarks, except labels are bit-based; i.e.
all labels may be attached to a flow at the same time.

Up to 128 labels are supported.  Supporting more labels
is possible, but requires increasing the ct offset delta
from u8 to u16 type due to increased extension sizes.

Mapping of bit-identifier to label name is done in userspace.

The extension is enabled at run-time once "-m connlabel" netfilter
rules are added.

Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
include/net/netfilter/nf_conntrack_extend.h
include/net/netfilter/nf_conntrack_labels.h [new file with mode: 0644]
include/net/netns/conntrack.h
include/uapi/linux/netfilter/xt_connlabel.h [new file with mode: 0644]
net/netfilter/Kconfig
net/netfilter/Makefile
net/netfilter/nf_conntrack_core.c
net/netfilter/nf_conntrack_labels.c [new file with mode: 0644]
net/netfilter/nf_conntrack_netlink.c
net/netfilter/xt_connlabel.c [new file with mode: 0644]