aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/net/xfrm/xfrm_input.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2017-10-09 09:43:34 -0700
committerDavid S. Miller <davem@davemloft.net>2017-10-09 09:43:34 -0700
commit93b03193c6a579dbe5e19139d1ab47b70dbeeebd (patch)
treefafe769e2780bdc76bf815893cf07fd647f8389f /net/xfrm/xfrm_input.c
parentipv4: Fix traffic triggered IPsec connections. (diff)
parentxfrm: don't call xfrm_policy_cache_flush under xfrm_state_lock (diff)
downloadwireguard-linux-93b03193c6a579dbe5e19139d1ab47b70dbeeebd.tar.xz
wireguard-linux-93b03193c6a579dbe5e19139d1ab47b70dbeeebd.zip
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/klassert/ipsec
Steffen Klassert says: ==================== pull request (net): ipsec 2017-10-09 1) Fix some error paths of the IPsec offloading API. 2) Fix a NULL pointer dereference when IPsec is used with vti. From Alexey Kodanev. 3) Don't call xfrm_policy_cache_flush under xfrm_state_lock, it triggers several locking warnings. From Artem Savkov. Please pull or let me know if there are problems. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to '')
-rw-r--r--net/xfrm/xfrm_input.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/net/xfrm/xfrm_input.c b/net/xfrm/xfrm_input.c
index 2515cd2bc5db..8ac9d32fb79d 100644
--- a/net/xfrm/xfrm_input.c
+++ b/net/xfrm/xfrm_input.c
@@ -429,7 +429,8 @@ resume:
nf_reset(skb);
if (decaps) {
- skb->sp->olen = 0;
+ if (skb->sp)
+ skb->sp->olen = 0;
skb_dst_drop(skb);
gro_cells_receive(&gro_cells, skb);
return 0;
@@ -440,7 +441,8 @@ resume:
err = x->inner_mode->afinfo->transport_finish(skb, xfrm_gro || async);
if (xfrm_gro) {
- skb->sp->olen = 0;
+ if (skb->sp)
+ skb->sp->olen = 0;
skb_dst_drop(skb);
gro_cells_receive(&gro_cells, skb);
return err;