Lines Matching refs:rx_opt

145 	bool unknown_opt = tcp_sk(sk)->rx_opt.saw_unknown &&
432 per_mss = max_t(u32, tp->rx_opt.mss_clamp, tp->mss_cache) +
701 if (tp->rx_opt.rcv_tsecr == tp->rcv_rtt_last_tsecr)
703 tp->rcv_rtt_last_tsecr = tp->rx_opt.rcv_tsecr;
707 u32 delta = tcp_time_stamp(tp) - tp->rx_opt.rcv_tsecr;
1028 tp->rx_opt.sack_ok |= TCP_DSACK_SEEN;
1064 tp->rx_opt.sack_ok, inet_csk(sk)->icsk_ca_state,
2420 return tp->rx_opt.saw_tstamp && tp->rx_opt.rcv_tsecr &&
2421 before(tp->rx_opt.rcv_tsecr, when);
3125 if (seq_rtt_us < 0 && tp->rx_opt.saw_tstamp && tp->rx_opt.rcv_tsecr &&
3127 u32 delta = tcp_time_stamp(tp) - tp->rx_opt.rcv_tsecr;
3578 nwin <<= tp->rx_opt.snd_wscale;
3687 tp->rx_opt.ts_recent = tp->rx_opt.rcv_tsval;
3688 tp->rx_opt.ts_recent_stamp = ktime_get_seconds();
3693 if (tp->rx_opt.saw_tstamp && !after(seq, tp->rcv_wup)) {
3701 if (tcp_paws_check(&tp->rx_opt, 0))
4193 tp->rx_opt.saw_tstamp = 1;
4195 tp->rx_opt.rcv_tsval = ntohl(*ptr);
4198 tp->rx_opt.rcv_tsecr = ntohl(*ptr) - tp->tsoffset;
4200 tp->rx_opt.rcv_tsecr = 0;
4217 tp->rx_opt.saw_tstamp = 0;
4219 } else if (tp->rx_opt.tstamp_ok &&
4225 tcp_parse_options(net, skb, &tp->rx_opt, 1, NULL);
4226 if (tp->rx_opt.saw_tstamp && tp->rx_opt.rcv_tsecr)
4227 tp->rx_opt.rcv_tsecr -= tp->tsoffset;
4304 !tcp_may_update_window(tp, ack, seq, ntohs(th->window) << tp->rx_opt.snd_wscale) &&
4307 (s32)(tp->rx_opt.ts_recent - tp->rx_opt.rcv_tsval) <= (inet_csk(sk)->icsk_rto * 1024) / HZ);
4315 return !tcp_paws_check(&tp->rx_opt, TCP_PAWS_WINDOW) &&
4446 tcp_sack_reset(&tp->rx_opt);
4487 tp->rx_opt.dsack = 1;
4497 if (!tp->rx_opt.dsack)
4549 for (this_sack = 1; this_sack < tp->rx_opt.num_sacks;) {
4556 tp->rx_opt.num_sacks--;
4557 for (i = this_sack; i < tp->rx_opt.num_sacks; i++)
4597 int cur_sacks = tp->rx_opt.num_sacks;
4627 tp->rx_opt.num_sacks--;
4637 tp->rx_opt.num_sacks++;
4645 int num_sacks = tp->rx_opt.num_sacks;
4650 tp->rx_opt.num_sacks = 0;
4671 tp->rx_opt.num_sacks = num_sacks;
4851 tp->rx_opt.num_sacks = 1;
5065 tp->rx_opt.dsack = 0;
5111 if (tp->rx_opt.num_sacks)
5422 if (tp->rx_opt.sack_ok)
5423 tcp_sack_reset(&tp->rx_opt);
5753 tp->rx_opt.saw_tstamp &&
5806 if (tcp_is_sack(tp) && tp->rx_opt.num_sacks > 0) {
5811 for (this_sack = 1; this_sack < tp->rx_opt.num_sacks;
5914 tp->rx_opt.saw_tstamp = 0;
5942 if ((s32)(tp->rx_opt.rcv_tsval - tp->rx_opt.ts_recent) < 0)
5974 tp->rcv_rtt_last_tsecr = tp->rx_opt.rcv_tsecr;
6127 if (!tp->rx_opt.snd_wscale)
6138 u16 mss = tp->rx_opt.mss_clamp, try_exp = 0;
6141 if (mss == tp->rx_opt.user_mss) {
6200 if (tp->syn_smc && !tp->rx_opt.smc_ok)
6216 if (tp->undo_marker && syn_stamp && tp->rx_opt.saw_tstamp &&
6217 syn_stamp == tp->rx_opt.rcv_tsecr)
6227 int saved_clamp = tp->rx_opt.mss_clamp;
6231 tcp_parse_options(sock_net(sk), skb, &tp->rx_opt, 0, &foc);
6232 if (tp->rx_opt.saw_tstamp && tp->rx_opt.rcv_tsecr)
6233 tp->rx_opt.rcv_tsecr -= tp->tsoffset;
6254 if (tp->rx_opt.saw_tstamp && tp->rx_opt.rcv_tsecr &&
6255 !between(tp->rx_opt.rcv_tsecr, tp->retrans_stamp,
6312 if (!tp->rx_opt.wscale_ok) {
6313 tp->rx_opt.snd_wscale = tp->rx_opt.rcv_wscale = 0;
6317 if (tp->rx_opt.saw_tstamp) {
6318 tp->rx_opt.tstamp_ok = 1;
6383 if (tp->rx_opt.ts_recent_stamp && tp->rx_opt.saw_tstamp &&
6384 tcp_paws_reject(&tp->rx_opt, 0)) {
6395 if (tp->rx_opt.saw_tstamp) {
6396 tp->rx_opt.tstamp_ok = 1;
6444 tcp_clear_options(&tp->rx_opt);
6445 tp->rx_opt.mss_clamp = saved_clamp;
6450 tcp_clear_options(&tp->rx_opt);
6451 tp->rx_opt.mss_clamp = saved_clamp;
6541 tp->rx_opt.saw_tstamp = 0;
6555 tp->rx_opt.saw_tstamp = 0;
6616 tp->snd_wnd = ntohs(th->window) << tp->rx_opt.snd_wscale;
6619 if (tp->rx_opt.tstamp_ok)
6813 const struct tcp_options_received *rx_opt,
6823 req->mss = rx_opt->mss_clamp;
6824 req->ts_recent = rx_opt->saw_tstamp ? rx_opt->rcv_tsval : 0;
6825 ireq->tstamp_ok = rx_opt->tstamp_ok;
6826 ireq->sack_ok = rx_opt->sack_ok;
6827 ireq->snd_wscale = rx_opt->snd_wscale;
6828 ireq->wscale_ok = rx_opt->wscale_ok;
6835 ireq->smc_ok = rx_opt->smc_ok && !(tcp_sk(sk)->smc_hs_congested &&
6956 mss = tcp_parse_mss_option(th, tp->rx_opt.user_mss);
7010 tmp_opt.user_mss = tp->rx_opt.user_mss;