diff options
Diffstat (limited to 'net/sctp/ipv6.c')
-rw-r--r-- | net/sctp/ipv6.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/net/sctp/ipv6.c b/net/sctp/ipv6.c index 47f91afa0211..4124bbb99947 100644 --- a/net/sctp/ipv6.c +++ b/net/sctp/ipv6.c | |||
@@ -156,7 +156,7 @@ SCTP_STATIC void sctp_v6_err(struct sk_buff *skb, struct inet6_skb_parm *opt, | |||
156 | skb->network_header = saveip; | 156 | skb->network_header = saveip; |
157 | skb->transport_header = savesctp; | 157 | skb->transport_header = savesctp; |
158 | if (!sk) { | 158 | if (!sk) { |
159 | ICMP6_INC_STATS_BH(idev, ICMP6_MIB_INERRORS); | 159 | ICMP6_INC_STATS_BH(dev_net(skb->dev), idev, ICMP6_MIB_INERRORS); |
160 | goto out; | 160 | goto out; |
161 | } | 161 | } |
162 | 162 | ||
@@ -837,6 +837,7 @@ static int sctp_inet6_cmp_addr(const union sctp_addr *addr1, | |||
837 | struct sctp_sock *opt) | 837 | struct sctp_sock *opt) |
838 | { | 838 | { |
839 | struct sctp_af *af1, *af2; | 839 | struct sctp_af *af1, *af2; |
840 | struct sock *sk = sctp_opt2sk(opt); | ||
840 | 841 | ||
841 | af1 = sctp_get_af_specific(addr1->sa.sa_family); | 842 | af1 = sctp_get_af_specific(addr1->sa.sa_family); |
842 | af2 = sctp_get_af_specific(addr2->sa.sa_family); | 843 | af2 = sctp_get_af_specific(addr2->sa.sa_family); |
@@ -845,11 +846,11 @@ static int sctp_inet6_cmp_addr(const union sctp_addr *addr1, | |||
845 | return 0; | 846 | return 0; |
846 | 847 | ||
847 | /* If the socket is IPv6 only, v4 addrs will not match */ | 848 | /* If the socket is IPv6 only, v4 addrs will not match */ |
848 | if (__ipv6_only_sock(sctp_opt2sk(opt)) && af1 != af2) | 849 | if (__ipv6_only_sock(sk) && af1 != af2) |
849 | return 0; | 850 | return 0; |
850 | 851 | ||
851 | /* Today, wildcard AF_INET/AF_INET6. */ | 852 | /* Today, wildcard AF_INET/AF_INET6. */ |
852 | if (sctp_is_any(addr1) || sctp_is_any(addr2)) | 853 | if (sctp_is_any(sk, addr1) || sctp_is_any(sk, addr2)) |
853 | return 1; | 854 | return 1; |
854 | 855 | ||
855 | if (addr1->sa.sa_family != addr2->sa.sa_family) | 856 | if (addr1->sa.sa_family != addr2->sa.sa_family) |