diff options
Diffstat (limited to 'net/ipv6/ip6_output.c')
| -rw-r--r-- | net/ipv6/ip6_output.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c index 2a4f08c8a02d..d34aa61353bb 100644 --- a/net/ipv6/ip6_output.c +++ b/net/ipv6/ip6_output.c | |||
| @@ -920,7 +920,9 @@ static int ip6_dst_lookup_tail(struct sock *sk, | |||
| 920 | 920 | ||
| 921 | if (ipv6_addr_any(&fl->fl6_src)) { | 921 | if (ipv6_addr_any(&fl->fl6_src)) { |
| 922 | err = ipv6_dev_get_saddr(ip6_dst_idev(*dst)->dev, | 922 | err = ipv6_dev_get_saddr(ip6_dst_idev(*dst)->dev, |
| 923 | &fl->fl6_dst, &fl->fl6_src); | 923 | &fl->fl6_dst, |
| 924 | sk ? inet6_sk(sk)->srcprefs : 0, | ||
| 925 | &fl->fl6_src); | ||
| 924 | if (err) | 926 | if (err) |
| 925 | goto out_err_release; | 927 | goto out_err_release; |
| 926 | } | 928 | } |
