diff options
author | Nick Bowler <nbowler@elliptictech.com> | 2011-11-10 09:01:27 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-02-03 09:18:54 -0800 |
commit | ffee9a18f29a0645c2d117083e025f557c738018 (patch) | |
tree | 3ce5e07a74f8e314df5eed0df8dc5acfc3aa54e7 | |
parent | da8ae089a79cdc37589cab581a2ca9cf48f98904 (diff) | |
download | kernel_samsung_aries-ffee9a18f29a0645c2d117083e025f557c738018.zip kernel_samsung_aries-ffee9a18f29a0645c2d117083e025f557c738018.tar.gz kernel_samsung_aries-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>
-rw-r--r-- | net/ipv4/ah4.c | 2 | ||||
-rw-r--r-- | net/ipv6/ah6.c | 2 |
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; } |