]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
sdp: Do not ignore scope_id in IPv6
authorAmir Vadai <amirv@mellanox.co.il>
Thu, 6 Jan 2011 12:38:34 +0000 (14:38 +0200)
committerMukesh Kacker <mukesh.kacker@oracle.com>
Tue, 6 Oct 2015 12:05:40 +0000 (05:05 -0700)
Signed-off-by: Amir Vadai <amirv@mellanox.co.il>
drivers/infiniband/ulp/sdp/sdp_main.c

index b0b0e932661ce311cca0109cc934d8fa8fcdb8b2..6ca82f1674ce6ba46c272e9cb4fa1cbdb59c17ec 100644 (file)
@@ -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) {