]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - net/netfilter/core.c
Merge branch 'process_vm' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux
[karo-tx-linux.git] / net / netfilter / core.c
index 3346829ea07f09e28107c4b227d8b5d5763be30b..afca6c78948cfd77a1ad8b429f733482c4b11c1a 100644 (file)
@@ -180,17 +180,16 @@ next_hook:
                if (ret == 0)
                        ret = -EPERM;
        } else if ((verdict & NF_VERDICT_MASK) == NF_QUEUE) {
-               ret = nf_queue(skb, elem, pf, hook, indev, outdev, okfn,
-                              verdict >> NF_VERDICT_QBITS);
-               if (ret < 0) {
-                       if (ret == -ECANCELED)
+               int err = nf_queue(skb, elem, pf, hook, indev, outdev, okfn,
+                                               verdict >> NF_VERDICT_QBITS);
+               if (err < 0) {
+                       if (err == -ECANCELED)
                                goto next_hook;
-                       if (ret == -ESRCH &&
+                       if (err == -ESRCH &&
                           (verdict & NF_VERDICT_FLAG_QUEUE_BYPASS))
                                goto next_hook;
                        kfree_skb(skb);
                }
-               ret = 0;
        }
        rcu_read_unlock();
        return ret;