diff options
author | Steffen Klassert <steffen.klassert@secunet.com> | 2011-04-25 19:40:23 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-04-26 12:46:04 -0700 |
commit | c0a56e64aec331f33ead29ba493ee184d9bdc840 (patch) | |
tree | 609d6b30b77dd7f129789d93e9d3fbc584791267 /net/ipv6 | |
parent | 3f602b08dec32c418fc391fc838db357aab84f8a (diff) | |
download | linux-c0a56e64aec331f33ead29ba493ee184d9bdc840.tar.gz linux-c0a56e64aec331f33ead29ba493ee184d9bdc840.tar.bz2 linux-c0a56e64aec331f33ead29ba493ee184d9bdc840.zip |
esp6: Fix scatterlist initialization
When we use IPsec extended sequence numbers, we may overwrite
the last scatterlist of the associated data by the scatterlist
for the skb. This patch fixes this by placing the scatterlist
for the skb right behind the last scatterlist of the associated
data. esp4 does it already like that.
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6')
-rw-r--r-- | net/ipv6/esp6.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/esp6.c b/net/ipv6/esp6.c index 5aa8ec88f194..59dccfbb5b11 100644 --- a/net/ipv6/esp6.c +++ b/net/ipv6/esp6.c @@ -371,7 +371,7 @@ static int esp6_input(struct xfrm_state *x, struct sk_buff *skb) iv = esp_tmp_iv(aead, tmp, seqhilen); req = esp_tmp_req(aead, iv); asg = esp_req_sg(aead, req); - sg = asg + 1; + sg = asg + sglists; skb->ip_summed = CHECKSUM_NONE; |