netfilter: nf_tables: set->ops->insert returns opaque set element in case of EEXIST
[linux-2.6-microblaze.git] / net / netfilter / nft_set_hash.c
index e6c0089..6c2061b 100644 (file)
@@ -167,7 +167,7 @@ err1:
 
 static int nft_rhash_insert(const struct net *net, const struct nft_set *set,
                            const struct nft_set_elem *elem,
-                           struct nft_set_ext **ext)
+                           struct nft_elem_priv **elem_priv)
 {
        struct nft_rhash_elem *he = nft_elem_priv_cast(elem->priv);
        struct nft_rhash *priv = nft_set_priv(set);
@@ -183,7 +183,7 @@ static int nft_rhash_insert(const struct net *net, const struct nft_set *set,
        if (IS_ERR(prev))
                return PTR_ERR(prev);
        if (prev) {
-               *ext = &prev->ext;
+               *elem_priv = &prev->priv;
                return -EEXIST;
        }
        return 0;
@@ -568,7 +568,7 @@ static u32 nft_jhash(const struct nft_set *set, const struct nft_hash *priv,
 
 static int nft_hash_insert(const struct net *net, const struct nft_set *set,
                           const struct nft_set_elem *elem,
-                          struct nft_set_ext **ext)
+                          struct nft_elem_priv **elem_priv)
 {
        struct nft_hash_elem *this = nft_elem_priv_cast(elem->priv), *he;
        struct nft_hash *priv = nft_set_priv(set);
@@ -580,7 +580,7 @@ static int nft_hash_insert(const struct net *net, const struct nft_set *set,
                if (!memcmp(nft_set_ext_key(&this->ext),
                            nft_set_ext_key(&he->ext), set->klen) &&
                    nft_set_elem_active(&he->ext, genmask)) {
-                       *ext = &he->ext;
+                       *elem_priv = &he->priv;
                        return -EEXIST;
                }
        }