|
@@ -351,7 +351,7 @@ struct sock *cookie_v4_check(struct sock *sk, struct sk_buff *skb)
|
|
|
treq->snt_synack.v64 = 0;
|
|
|
treq->tfo_listener = false;
|
|
|
|
|
|
- ireq->ir_iif = sk->sk_bound_dev_if;
|
|
|
+ ireq->ir_iif = inet_request_bound_dev_if(sk, skb);
|
|
|
|
|
|
/* We throwed the options of the initial SYN away, so we hope
|
|
|
* the ACK carries the same options again (see RFC1122 4.2.3.8)
|
|
@@ -371,7 +371,7 @@ struct sock *cookie_v4_check(struct sock *sk, struct sk_buff *skb)
|
|
|
* hasn't changed since we received the original syn, but I see
|
|
|
* no easy way to do this.
|
|
|
*/
|
|
|
- flowi4_init_output(&fl4, sk->sk_bound_dev_if, ireq->ir_mark,
|
|
|
+ flowi4_init_output(&fl4, ireq->ir_iif, ireq->ir_mark,
|
|
|
RT_CONN_FLAGS(sk), RT_SCOPE_UNIVERSE, IPPROTO_TCP,
|
|
|
inet_sk_flowi_flags(sk),
|
|
|
opt->srr ? opt->faddr : ireq->ir_rmt_addr,
|