aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorNick Bowler <nbowler@elliptictech.com>2011-11-10 09:01:27 +0000
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-02-03 09:18:54 -0800
commitffee9a18f29a0645c2d117083e025f557c738018 (patch)
tree3ce5e07a74f8e314df5eed0df8dc5acfc3aa54e7 /net
parentda8ae089a79cdc37589cab581a2ca9cf48f98904 (diff)
downloadkernel_samsung_smdk4412-ffee9a18f29a0645c2d117083e025f557c738018.zip
kernel_samsung_smdk4412-ffee9a18f29a0645c2d117083e025f557c738018.tar.gz
kernel_samsung_smdk4412-ffee9a18f29a0645c2d117083e025f557c738018.tar.bz2
ah: Don't return NET_XMIT_DROP on input.
commit 4b90a603a1b21d63cf743cc833680cb195a729f6 upstream. When the ahash driver returns -EBUSY, AH4/6 input functions return NET_XMIT_DROP, presumably copied from the output code path. But returning transmit codes on input doesn't make a lot of sense. Since NET_XMIT_DROP is a positive int, this gets interpreted as the next header type (i.e., success). As that can only end badly, remove the check. Signed-off-by: Nick Bowler <nbowler@elliptictech.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net')
-rw-r--r--net/ipv4/ah4.c2
-rw-r--r--net/ipv6/ah6.c2
2 files changed, 0 insertions, 4 deletions
diff --git a/net/ipv4/ah4.c b/net/ipv4/ah4.c
index c7056b2..36d1440 100644
--- a/net/ipv4/ah4.c
+++ b/net/ipv4/ah4.c
@@ -369,8 +369,6 @@ static int ah_input(struct xfrm_state *x, struct sk_buff *skb)
if (err == -EINPROGRESS)
goto out;
- if (err == -EBUSY)
- err = NET_XMIT_DROP;
goto out_free;
}
diff --git a/net/ipv6/ah6.c b/net/ipv6/ah6.c
index 7a33aaa..4c0f894 100644
--- a/net/ipv6/ah6.c
+++ b/net/ipv6/ah6.c
@@ -581,8 +581,6 @@ static int ah6_input(struct xfrm_state *x, struct sk_buff *skb)
if (err == -EINPROGRESS)
goto out;
- if (err == -EBUSY)
- err = NET_XMIT_DROP;
goto out_free;
}