diff options
author | Jozsef Kadlecsik <kadlec@blackhole.kfki.hu> | 2013-04-27 08:38:56 -0400 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2013-04-29 14:08:59 -0400 |
commit | 34d666d489cf70c246ca99b2387741915c34b88c (patch) | |
tree | 1f8dab6574cccfd58538ef0f42f7cc7bdbb64c60 /net | |
parent | 7d47d972b5d154e143bb24a795af92bbb3c95532 (diff) |
netfilter: ipset: Introduce the counter extension in the core
Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'net')
-rw-r--r-- | net/netfilter/ipset/ip_set_core.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/net/netfilter/ipset/ip_set_core.c b/net/netfilter/ipset/ip_set_core.c index 4486285d10da..f6d878a46c43 100644 --- a/net/netfilter/ipset/ip_set_core.c +++ b/net/netfilter/ipset/ip_set_core.c | |||
@@ -324,6 +324,16 @@ ip_set_get_extensions(struct ip_set *set, struct nlattr *tb[], | |||
324 | return -IPSET_ERR_TIMEOUT; | 324 | return -IPSET_ERR_TIMEOUT; |
325 | ext->timeout = ip_set_timeout_uget(tb[IPSET_ATTR_TIMEOUT]); | 325 | ext->timeout = ip_set_timeout_uget(tb[IPSET_ATTR_TIMEOUT]); |
326 | } | 326 | } |
327 | if (tb[IPSET_ATTR_BYTES] || tb[IPSET_ATTR_PACKETS]) { | ||
328 | if (!(set->extensions & IPSET_EXT_COUNTER)) | ||
329 | return -IPSET_ERR_COUNTER; | ||
330 | if (tb[IPSET_ATTR_BYTES]) | ||
331 | ext->bytes = be64_to_cpu(nla_get_be64( | ||
332 | tb[IPSET_ATTR_BYTES])); | ||
333 | if (tb[IPSET_ATTR_PACKETS]) | ||
334 | ext->packets = be64_to_cpu(nla_get_be64( | ||
335 | tb[IPSET_ATTR_PACKETS])); | ||
336 | } | ||
327 | return 0; | 337 | return 0; |
328 | } | 338 | } |
329 | EXPORT_SYMBOL_GPL(ip_set_get_extensions); | 339 | EXPORT_SYMBOL_GPL(ip_set_get_extensions); |