diff options
Diffstat (limited to 'net/ipv6/esp6.c')
-rw-r--r-- | net/ipv6/esp6.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/net/ipv6/esp6.c b/net/ipv6/esp6.c index 7b5b94f13902..3dcaac7a0972 100644 --- a/net/ipv6/esp6.c +++ b/net/ipv6/esp6.c | |||
@@ -94,6 +94,7 @@ static int esp6_output(struct xfrm_state *x, struct sk_buff *skb) | |||
94 | 94 | ||
95 | esph->spi = x->id.spi; | 95 | esph->spi = x->id.spi; |
96 | esph->seq_no = htonl(++x->replay.oseq); | 96 | esph->seq_no = htonl(++x->replay.oseq); |
97 | xfrm_aevent_doreplay(x); | ||
97 | 98 | ||
98 | if (esp->conf.ivlen) | 99 | if (esp->conf.ivlen) |
99 | crypto_cipher_set_iv(tfm, esp->conf.ivec, crypto_tfm_alg_ivsize(tfm)); | 100 | crypto_cipher_set_iv(tfm, esp->conf.ivec, crypto_tfm_alg_ivsize(tfm)); |
@@ -304,12 +305,10 @@ static int esp6_init_state(struct xfrm_state *x) | |||
304 | if (x->encap) | 305 | if (x->encap) |
305 | goto error; | 306 | goto error; |
306 | 307 | ||
307 | esp = kmalloc(sizeof(*esp), GFP_KERNEL); | 308 | esp = kzalloc(sizeof(*esp), GFP_KERNEL); |
308 | if (esp == NULL) | 309 | if (esp == NULL) |
309 | return -ENOMEM; | 310 | return -ENOMEM; |
310 | 311 | ||
311 | memset(esp, 0, sizeof(*esp)); | ||
312 | |||
313 | if (x->aalg) { | 312 | if (x->aalg) { |
314 | struct xfrm_algo_desc *aalg_desc; | 313 | struct xfrm_algo_desc *aalg_desc; |
315 | 314 | ||