From: Amir Vadai Date: Thu, 6 Jan 2011 12:38:34 +0000 (+0200) Subject: sdp: Do not ignore scope_id in IPv6 X-Git-Tag: v4.1.12-92~264^2~5^2~46 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=19c4d3a93a3eb27fed761d3742c3d3ee0f2a103c;p=users%2Fjedix%2Flinux-maple.git sdp: Do not ignore scope_id in IPv6 Signed-off-by: Amir Vadai --- diff --git a/drivers/infiniband/ulp/sdp/sdp_main.c b/drivers/infiniband/ulp/sdp/sdp_main.c index b0b0e932661ce..6ca82f1674ce6 100644 --- a/drivers/infiniband/ulp/sdp/sdp_main.c +++ b/drivers/infiniband/ulp/sdp/sdp_main.c @@ -176,6 +176,7 @@ static int sdp_get_port(struct sock *sk, unsigned short snum) } else { addr6->sin6_family = AF_INET6; addr6->sin6_port = htons(snum); + addr6->sin6_scope_id = sk->sk_bound_dev_if; ipv6_addr_copy(&addr6->sin6_addr, &inet6_sk(sk)->rcv_saddr); addr_len = sizeof(*addr6); } @@ -816,6 +817,7 @@ static int sdp_ipv6_connect(struct sock *sk, struct sockaddr *uaddr, int addr_le if(addr_type & IPV6_ADDR_MULTICAST) return -ENETUNREACH; + sk->sk_bound_dev_if = usin->sin6_scope_id; src_addr.sin6_addr = inet6_sk(sk)->saddr; if (!ssk->id) {