diff options
| author | David S. Miller <davem@davemloft.net> | 2011-11-26 14:47:03 -0500 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2011-11-26 14:47:03 -0500 |
| commit | 6dec4ac4ee1ad894dc0e9647cd3e180f93fc353c (patch) | |
| tree | cd71e597bbbe677820bb229c6aedbad412758959 /net/ipv6/tcp_ipv6.c | |
| parent | d6f03f29f7cdf064289f941bf0b838348e996e65 (diff) | |
| parent | fc0b927d9a5024e138c4318fe19a590f23e3eeec (diff) | |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts:
net/ipv4/inet_diag.c
Diffstat (limited to 'net/ipv6/tcp_ipv6.c')
| -rw-r--r-- | net/ipv6/tcp_ipv6.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c index fd98dd010fcb..9d74eee334d6 100644 --- a/net/ipv6/tcp_ipv6.c +++ b/net/ipv6/tcp_ipv6.c | |||
| @@ -1253,6 +1253,13 @@ static int tcp_v6_conn_request(struct sock *sk, struct sk_buff *skb) | |||
| 1253 | if (!want_cookie || tmp_opt.tstamp_ok) | 1253 | if (!want_cookie || tmp_opt.tstamp_ok) |
| 1254 | TCP_ECN_create_request(req, tcp_hdr(skb)); | 1254 | TCP_ECN_create_request(req, tcp_hdr(skb)); |
| 1255 | 1255 | ||
| 1256 | treq->iif = sk->sk_bound_dev_if; | ||
| 1257 | |||
| 1258 | /* So that link locals have meaning */ | ||
| 1259 | if (!sk->sk_bound_dev_if && | ||
| 1260 | ipv6_addr_type(&treq->rmt_addr) & IPV6_ADDR_LINKLOCAL) | ||
| 1261 | treq->iif = inet6_iif(skb); | ||
| 1262 | |||
| 1256 | if (!isn) { | 1263 | if (!isn) { |
| 1257 | struct inet_peer *peer = NULL; | 1264 | struct inet_peer *peer = NULL; |
| 1258 | 1265 | ||
| @@ -1262,12 +1269,6 @@ static int tcp_v6_conn_request(struct sock *sk, struct sk_buff *skb) | |||
| 1262 | atomic_inc(&skb->users); | 1269 | atomic_inc(&skb->users); |
| 1263 | treq->pktopts = skb; | 1270 | treq->pktopts = skb; |
| 1264 | } | 1271 | } |
| 1265 | treq->iif = sk->sk_bound_dev_if; | ||
| 1266 | |||
| 1267 | /* So that link locals have meaning */ | ||
| 1268 | if (!sk->sk_bound_dev_if && | ||
| 1269 | ipv6_addr_type(&treq->rmt_addr) & IPV6_ADDR_LINKLOCAL) | ||
| 1270 | treq->iif = inet6_iif(skb); | ||
| 1271 | 1272 | ||
| 1272 | if (want_cookie) { | 1273 | if (want_cookie) { |
| 1273 | isn = cookie_v6_init_sequence(sk, skb, &req->mss); | 1274 | isn = cookie_v6_init_sequence(sk, skb, &req->mss); |
