]> granicus.if.org Git - ipset/commitdiff
netfilter: ipset: make ip_set_put_flags extern.
authorJeremy Sowden <jeremy@azazel.net>
Thu, 3 Oct 2019 19:56:05 +0000 (20:56 +0100)
committerJozsef Kadlecsik <kadlec@netfilter.org>
Mon, 7 Oct 2019 19:51:54 +0000 (21:51 +0200)
ip_set_put_flags is rather large for a static inline function in a
header-file.  Move it to ip_set_core.c and export it.

Signed-off-by: Jeremy Sowden <jeremy@azazel.net>
Signed-off-by: Jozsef Kadlecsik <kadlec@netfilter.org>
kernel/include/linux/netfilter/ipset/ip_set.h
kernel/net/netfilter/ipset/ip_set_core.c

index db849f30b72d51d5cac141e81abff2159a428644..9b8274a7c0caa4cfd511b937fb5cd0bb65899955 100644 (file)
@@ -280,28 +280,7 @@ ip_set_ext_destroy(struct ip_set *set, void *data)
        }
 }
 
-static inline int
-ip_set_put_flags(struct sk_buff *skb, struct ip_set *set)
-{
-       u32 cadt_flags = 0;
-
-       if (SET_WITH_TIMEOUT(set))
-               if (unlikely(nla_put_net32(skb, IPSET_ATTR_TIMEOUT,
-                                          htonl(set->timeout))))
-                       return -EMSGSIZE;
-       if (SET_WITH_COUNTER(set))
-               cadt_flags |= IPSET_FLAG_WITH_COUNTERS;
-       if (SET_WITH_COMMENT(set))
-               cadt_flags |= IPSET_FLAG_WITH_COMMENT;
-       if (SET_WITH_SKBINFO(set))
-               cadt_flags |= IPSET_FLAG_WITH_SKBINFO;
-       if (SET_WITH_FORCEADD(set))
-               cadt_flags |= IPSET_FLAG_WITH_FORCEADD;
-
-       if (!cadt_flags)
-               return 0;
-       return nla_put_net32(skb, IPSET_ATTR_CADT_FLAGS, htonl(cadt_flags));
-}
+int ip_set_put_flags(struct sk_buff *skb, struct ip_set *set);
 
 /* Netlink CB args */
 enum {
index d64d6234c1356d95b48322811384cbb904f93ed3..88a90d279b3bca2c8dc9e7e57349fd5a1aee24fb 100644 (file)
@@ -1431,6 +1431,30 @@ IPSET_CBFN(ip_set_swap, struct net *net, struct sock *ctnl,
 #define DUMP_TYPE(arg)         (((u32)(arg)) & 0x0000FFFF)
 #define DUMP_FLAGS(arg)                (((u32)(arg)) >> 16)
 
+int
+ip_set_put_flags(struct sk_buff *skb, struct ip_set *set)
+{
+       u32 cadt_flags = 0;
+
+       if (SET_WITH_TIMEOUT(set))
+               if (unlikely(nla_put_net32(skb, IPSET_ATTR_TIMEOUT,
+                                          htonl(set->timeout))))
+                       return -EMSGSIZE;
+       if (SET_WITH_COUNTER(set))
+               cadt_flags |= IPSET_FLAG_WITH_COUNTERS;
+       if (SET_WITH_COMMENT(set))
+               cadt_flags |= IPSET_FLAG_WITH_COMMENT;
+       if (SET_WITH_SKBINFO(set))
+               cadt_flags |= IPSET_FLAG_WITH_SKBINFO;
+       if (SET_WITH_FORCEADD(set))
+               cadt_flags |= IPSET_FLAG_WITH_FORCEADD;
+
+       if (!cadt_flags)
+               return 0;
+       return nla_put_net32(skb, IPSET_ATTR_CADT_FLAGS, htonl(cadt_flags));
+}
+EXPORT_SYMBOL_GPL(ip_set_put_flags);
+
 static int
 ip_set_dump_done(struct netlink_callback *cb)
 {