netfilter: restore POST_ROUTING hook in NF_HOOK_COND
authorPatrick McHardy <kaber@trash.net>
Fri, 19 Feb 2010 07:03:28 +0000 (08:03 +0100)
committerPatrick McHardy <kaber@trash.net>
Fri, 19 Feb 2010 07:03:28 +0000 (08:03 +0100)
Commit 2249065 ("netfilter: get rid of the grossness in netfilter.h")
inverted the logic for conditional hook invocation, breaking the
POST_ROUTING hook invoked by ip_output().

Correct the logic and remove an unnecessary initialization.

Reported-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: Patrick McHardy <kaber@trash.net>
include/linux/netfilter.h

index 70079454ffd081c00dfa3ed02eb9af0a79a99583..89341c32631a5f965b1a65f757db1d7fb004cc30 100644 (file)
@@ -212,8 +212,9 @@ NF_HOOK_COND(uint8_t pf, unsigned int hook, struct sk_buff *skb,
             struct net_device *in, struct net_device *out,
             int (*okfn)(struct sk_buff *), bool cond)
 {
-       int ret = 1;
-       if (cond ||
+       int ret;
+
+       if (!cond ||
            (ret = nf_hook_thresh(pf, hook, skb, in, out, okfn, INT_MIN) == 1))
                ret = okfn(skb);
        return ret;