Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
[firefly-linux-kernel-4.4.55.git] / net / ipv6 / netfilter / nf_conntrack_l3proto_ipv6.c
index 2b6c226f5198e42e60f7cdcd5b9ae3e10d50b831..97bcf2bae8574a1a79d5410e18826f78e2ecc5dd 100644 (file)
@@ -330,12 +330,8 @@ ipv6_getorigdst(struct sock *sk, int optval, void __user *user, int *len)
                                        sizeof(sin6.sin6_addr));
 
        nf_ct_put(ct);
-
-       if (ipv6_addr_type(&sin6.sin6_addr) & IPV6_ADDR_LINKLOCAL)
-               sin6.sin6_scope_id = sk->sk_bound_dev_if;
-       else
-               sin6.sin6_scope_id = 0;
-
+       sin6.sin6_scope_id = ipv6_iface_scope_id(&sin6.sin6_addr,
+                                                sk->sk_bound_dev_if);
        return copy_to_user(user, &sin6, sizeof(sin6)) ? -EFAULT : 0;
 }