diff options
Diffstat (limited to 'net/ipv6/raw.c')
-rw-r--r-- | net/ipv6/raw.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/net/ipv6/raw.c b/net/ipv6/raw.c index 3e2ad0a70412..1352c1d9bf4d 100644 --- a/net/ipv6/raw.c +++ b/net/ipv6/raw.c | |||
@@ -533,7 +533,7 @@ static int rawv6_send_hdrinc(struct sock *sk, void *from, int length, | |||
533 | struct flowi *fl, struct rt6_info *rt, | 533 | struct flowi *fl, struct rt6_info *rt, |
534 | unsigned int flags) | 534 | unsigned int flags) |
535 | { | 535 | { |
536 | struct inet_sock *inet = inet_sk(sk); | 536 | struct ipv6_pinfo *np = inet6_sk(sk); |
537 | struct ipv6hdr *iph; | 537 | struct ipv6hdr *iph; |
538 | struct sk_buff *skb; | 538 | struct sk_buff *skb; |
539 | unsigned int hh_len; | 539 | unsigned int hh_len; |
@@ -570,7 +570,7 @@ static int rawv6_send_hdrinc(struct sock *sk, void *from, int length, | |||
570 | err = NF_HOOK(PF_INET6, NF_IP6_LOCAL_OUT, skb, NULL, rt->u.dst.dev, | 570 | err = NF_HOOK(PF_INET6, NF_IP6_LOCAL_OUT, skb, NULL, rt->u.dst.dev, |
571 | dst_output); | 571 | dst_output); |
572 | if (err > 0) | 572 | if (err > 0) |
573 | err = inet->recverr ? net_xmit_errno(err) : 0; | 573 | err = np->recverr ? net_xmit_errno(err) : 0; |
574 | if (err) | 574 | if (err) |
575 | goto error; | 575 | goto error; |
576 | out: | 576 | out: |
@@ -807,8 +807,6 @@ done: | |||
807 | ip6_dst_store(sk, dst, | 807 | ip6_dst_store(sk, dst, |
808 | ipv6_addr_equal(&fl.fl6_dst, &np->daddr) ? | 808 | ipv6_addr_equal(&fl.fl6_dst, &np->daddr) ? |
809 | &np->daddr : NULL); | 809 | &np->daddr : NULL); |
810 | if (err > 0) | ||
811 | err = np->recverr ? net_xmit_errno(err) : 0; | ||
812 | 810 | ||
813 | release_sock(sk); | 811 | release_sock(sk); |
814 | out: | 812 | out: |