From c44b4657fa84d66423c19a4e60e5ef9d1633daeb Mon Sep 17 00:00:00 2001 From: Ken-ichirou MATSUZAWA Date: Fri, 13 Mar 2015 07:21:40 +0900 Subject: conntrack: add mark event filter This patch adds mark filter for event listener, using same struct nfct_filter_dump_mark at dump. Signed-off-by: Ken-ichirou MATSUZAWA Signed-off-by: Florian Westphal --- src/conntrack/filter.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/conntrack/filter.c') diff --git a/src/conntrack/filter.c b/src/conntrack/filter.c index 026545a..78fbbc5 100644 --- a/src/conntrack/filter.c +++ b/src/conntrack/filter.c @@ -79,6 +79,18 @@ static void filter_attr_dst_ipv6(struct nfct_filter *filter, const void *value) filter->l3proto_elems_ipv6[1]++; } +static void filter_attr_mark(struct nfct_filter *filter, const void *value) +{ + const struct nfct_filter_dump_mark *this = value; + + if (filter->mark_elems >= __FILTER_MARK_MAX) + return; + + filter->mark[filter->mark_elems].val = this->val; + filter->mark[filter->mark_elems].mask = this->mask; + filter->mark_elems++; +} + const filter_attr filter_attr_array[NFCT_FILTER_MAX] = { [NFCT_FILTER_L4PROTO] = filter_attr_l4proto, [NFCT_FILTER_L4PROTO_STATE] = filter_attr_l4proto_state, @@ -86,4 +98,5 @@ const filter_attr filter_attr_array[NFCT_FILTER_MAX] = { [NFCT_FILTER_DST_IPV4] = filter_attr_dst_ipv4, [NFCT_FILTER_SRC_IPV6] = filter_attr_src_ipv6, [NFCT_FILTER_DST_IPV6] = filter_attr_dst_ipv6, + [NFCT_FILTER_MARK] = filter_attr_mark, }; -- cgit v1.2.3