diff options
Diffstat (limited to 'net/xfrm/xfrm_output.c')
-rw-r--r-- | net/xfrm/xfrm_output.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/net/xfrm/xfrm_output.c b/net/xfrm/xfrm_output.c index 3cb2a328a8ab..a55510f9ff35 100644 --- a/net/xfrm/xfrm_output.c +++ b/net/xfrm/xfrm_output.c | |||
@@ -334,7 +334,7 @@ static int xfrm4_prepare_output(struct xfrm_state *x, struct sk_buff *skb) | |||
334 | IPCB(skb)->flags |= IPSKB_XFRM_TUNNEL_SIZE; | 334 | IPCB(skb)->flags |= IPSKB_XFRM_TUNNEL_SIZE; |
335 | skb->protocol = htons(ETH_P_IP); | 335 | skb->protocol = htons(ETH_P_IP); |
336 | 336 | ||
337 | switch (x->outer_mode->encap) { | 337 | switch (x->outer_mode.encap) { |
338 | case XFRM_MODE_BEET: | 338 | case XFRM_MODE_BEET: |
339 | return xfrm4_beet_encap_add(x, skb); | 339 | return xfrm4_beet_encap_add(x, skb); |
340 | case XFRM_MODE_TUNNEL: | 340 | case XFRM_MODE_TUNNEL: |
@@ -357,7 +357,7 @@ static int xfrm6_prepare_output(struct xfrm_state *x, struct sk_buff *skb) | |||
357 | skb->ignore_df = 1; | 357 | skb->ignore_df = 1; |
358 | skb->protocol = htons(ETH_P_IPV6); | 358 | skb->protocol = htons(ETH_P_IPV6); |
359 | 359 | ||
360 | switch (x->outer_mode->encap) { | 360 | switch (x->outer_mode.encap) { |
361 | case XFRM_MODE_BEET: | 361 | case XFRM_MODE_BEET: |
362 | return xfrm6_beet_encap_add(x, skb); | 362 | return xfrm6_beet_encap_add(x, skb); |
363 | case XFRM_MODE_TUNNEL: | 363 | case XFRM_MODE_TUNNEL: |
@@ -373,22 +373,22 @@ static int xfrm6_prepare_output(struct xfrm_state *x, struct sk_buff *skb) | |||
373 | 373 | ||
374 | static int xfrm_outer_mode_output(struct xfrm_state *x, struct sk_buff *skb) | 374 | static int xfrm_outer_mode_output(struct xfrm_state *x, struct sk_buff *skb) |
375 | { | 375 | { |
376 | switch (x->outer_mode->encap) { | 376 | switch (x->outer_mode.encap) { |
377 | case XFRM_MODE_BEET: | 377 | case XFRM_MODE_BEET: |
378 | case XFRM_MODE_TUNNEL: | 378 | case XFRM_MODE_TUNNEL: |
379 | if (x->outer_mode->family == AF_INET) | 379 | if (x->outer_mode.family == AF_INET) |
380 | return xfrm4_prepare_output(x, skb); | 380 | return xfrm4_prepare_output(x, skb); |
381 | if (x->outer_mode->family == AF_INET6) | 381 | if (x->outer_mode.family == AF_INET6) |
382 | return xfrm6_prepare_output(x, skb); | 382 | return xfrm6_prepare_output(x, skb); |
383 | break; | 383 | break; |
384 | case XFRM_MODE_TRANSPORT: | 384 | case XFRM_MODE_TRANSPORT: |
385 | if (x->outer_mode->family == AF_INET) | 385 | if (x->outer_mode.family == AF_INET) |
386 | return xfrm4_transport_output(x, skb); | 386 | return xfrm4_transport_output(x, skb); |
387 | if (x->outer_mode->family == AF_INET6) | 387 | if (x->outer_mode.family == AF_INET6) |
388 | return xfrm6_transport_output(x, skb); | 388 | return xfrm6_transport_output(x, skb); |
389 | break; | 389 | break; |
390 | case XFRM_MODE_ROUTEOPTIMIZATION: | 390 | case XFRM_MODE_ROUTEOPTIMIZATION: |
391 | if (x->outer_mode->family == AF_INET6) | 391 | if (x->outer_mode.family == AF_INET6) |
392 | return xfrm6_ro_output(x, skb); | 392 | return xfrm6_ro_output(x, skb); |
393 | WARN_ON_ONCE(1); | 393 | WARN_ON_ONCE(1); |
394 | break; | 394 | break; |
@@ -489,7 +489,7 @@ resume: | |||
489 | } | 489 | } |
490 | skb_dst_set(skb, dst); | 490 | skb_dst_set(skb, dst); |
491 | x = dst->xfrm; | 491 | x = dst->xfrm; |
492 | } while (x && !(x->outer_mode->flags & XFRM_MODE_FLAG_TUNNEL)); | 492 | } while (x && !(x->outer_mode.flags & XFRM_MODE_FLAG_TUNNEL)); |
493 | 493 | ||
494 | return 0; | 494 | return 0; |
495 | 495 | ||
@@ -626,7 +626,7 @@ static int xfrm_inner_extract_output(struct xfrm_state *x, struct sk_buff *skb) | |||
626 | inner_mode = xfrm_ip2inner_mode(x, | 626 | inner_mode = xfrm_ip2inner_mode(x, |
627 | xfrm_af2proto(skb_dst(skb)->ops->family)); | 627 | xfrm_af2proto(skb_dst(skb)->ops->family)); |
628 | else | 628 | else |
629 | inner_mode = x->inner_mode; | 629 | inner_mode = &x->inner_mode; |
630 | 630 | ||
631 | if (inner_mode == NULL) | 631 | if (inner_mode == NULL) |
632 | return -EAFNOSUPPORT; | 632 | return -EAFNOSUPPORT; |