diff options
author | Brian Haley <brian.haley@hp.com> | 2008-08-14 18:33:21 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-08-14 18:33:21 -0400 |
commit | 191cd582500f49b32a63040fedeebb0168c720af (patch) | |
tree | 173ce9682d77798c6e4ca7e14af57ea2f46c55b8 /net/sctp | |
parent | 0eb8b1fe9238ca4c1797e4c105d5790abda1726f (diff) |
netns: Add network namespace argument to rt6_fill_node() and ipv6_dev_get_saddr()
ipv6_dev_get_saddr() blindly de-references dst_dev to get the network
namespace, but some callers might pass NULL. Change callers to pass a
namespace pointer instead.
Signed-off-by: Brian Haley <brian.haley@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sctp')
-rw-r--r-- | net/sctp/ipv6.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/sctp/ipv6.c b/net/sctp/ipv6.c index 483a01d0740a..47f91afa0211 100644 --- a/net/sctp/ipv6.c +++ b/net/sctp/ipv6.c | |||
@@ -319,7 +319,8 @@ static void sctp_v6_get_saddr(struct sctp_sock *sk, | |||
319 | __func__, asoc, dst, NIP6(daddr->v6.sin6_addr)); | 319 | __func__, asoc, dst, NIP6(daddr->v6.sin6_addr)); |
320 | 320 | ||
321 | if (!asoc) { | 321 | if (!asoc) { |
322 | ipv6_dev_get_saddr(dst ? ip6_dst_idev(dst)->dev : NULL, | 322 | ipv6_dev_get_saddr(sock_net(sctp_opt2sk(sk)), |
323 | dst ? ip6_dst_idev(dst)->dev : NULL, | ||
323 | &daddr->v6.sin6_addr, | 324 | &daddr->v6.sin6_addr, |
324 | inet6_sk(&sk->inet.sk)->srcprefs, | 325 | inet6_sk(&sk->inet.sk)->srcprefs, |
325 | &saddr->v6.sin6_addr); | 326 | &saddr->v6.sin6_addr); |