net: sched: add ipset ematch
authorFlorian Westphal <fw@strlen.de>
Wed, 11 Jul 2012 10:56:57 +0000 (10:56 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 12 Jul 2012 14:54:46 +0000 (07:54 -0700)
commit6d4fa852a023080101f1665ea189dd1844c87fef
tree66d687daf267ae9143e3984b130b3aca6b4869c8
parentfa919833e354b2e62b3c7d26920d1685ddc81eb2
net: sched: add ipset ematch

Can be used to match packets against netfilter ip sets created via ipset(8).
skb->sk_iif is used as 'incoming interface', skb->dev is 'outgoing interface'.

Since ipset is usually called from netfilter, the ematch
initializes a fake xt_action_param, pulls the ip header into the
linear area and also sets skb->data to the IP header (otherwise
matching Layer 4 set types doesn't work).

Tested-by: Mr Dash Four <mr.dash.four@googlemail.com>
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/pkt_cls.h
net/sched/Kconfig
net/sched/Makefile
net/sched/em_ipset.c [new file with mode: 0644]