git: dd7b86e2a010 - main - tcp: remove IS_FASTOPEN() macro
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 18 Mar 2024 15:58:23 UTC
The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=dd7b86e2a010818b53f42200815f1858300045d7 commit dd7b86e2a010818b53f42200815f1858300045d7 Author: Gleb Smirnoff <glebius@FreeBSD.org> AuthorDate: 2024-03-18 15:56:17 +0000 Commit: Gleb Smirnoff <glebius@FreeBSD.org> CommitDate: 2024-03-18 15:56:17 +0000 tcp: remove IS_FASTOPEN() macro The macro is more obfuscating than helping as it just checks a single flag of t_flags. All other t_flags bits are checked without a macro. A bigger problem was that declaration of the macro in tcp_var.h depended on a kernel option. It is a bad practice to create such definitions in installable headers. Reviewed by: rscheff, tuexen, kib Differential Revision: https://reviews.freebsd.org/D44362 --- sys/netinet/tcp_input.c | 14 +++++++------- sys/netinet/tcp_output.c | 14 +++++++------- sys/netinet/tcp_stacks/bbr.c | 26 +++++++++++++------------- sys/netinet/tcp_stacks/rack.c | 35 ++++++++++++++++++----------------- sys/netinet/tcp_subr.c | 2 +- sys/netinet/tcp_syncache.c | 2 +- sys/netinet/tcp_usrreq.c | 15 +++++++-------- sys/netinet/tcp_var.h | 8 -------- 8 files changed, 54 insertions(+), 62 deletions(-) diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index 8df975bcee54..8410cb490915 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -1680,7 +1680,7 @@ tcp_do_segment(struct tcpcb *tp, struct mbuf *m, struct tcphdr *th, (tp->t_flags & TF_NOOPT))) { tp->t_flags &= ~TF_SACK_PERMIT; } - if (IS_FASTOPEN(tp->t_flags)) { + if (tp->t_flags & TF_FASTOPEN) { if ((to.to_flags & TOF_FASTOPEN) && !(tp->t_flags & TF_NOOPT)) { uint16_t mss; @@ -1989,7 +1989,7 @@ tcp_do_segment(struct tcpcb *tp, struct mbuf *m, struct tcphdr *th, tcp_log_end_status(tp, TCP_EI_STATUS_RST_IN_FRONT); goto dropwithreset; } - if (IS_FASTOPEN(tp->t_flags)) { + if (tp->t_flags & TF_FASTOPEN) { /* * When a TFO connection is in SYN_RECEIVED, the * only valid packets are the initial SYN, a @@ -2063,7 +2063,7 @@ tcp_do_segment(struct tcpcb *tp, struct mbuf *m, struct tcphdr *th, * If not all the data that was sent in the TFO SYN * has been acked, resend the remainder right away. */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && (tp->snd_una != tp->snd_max)) { tp->snd_nxt = th->th_ack; tfo_partial_ack = 1; @@ -2419,7 +2419,7 @@ tcp_do_segment(struct tcpcb *tp, struct mbuf *m, struct tcphdr *th, if (tp->t_state == TCPS_SYN_RECEIVED || (tp->t_flags & TF_NEEDSYN)) { if (tp->t_state == TCPS_SYN_RECEIVED && - IS_FASTOPEN(tp->t_flags)) { + (tp->t_flags & TF_FASTOPEN)) { tp->snd_wnd = tiwin; cc_conn_init(tp); } @@ -2467,7 +2467,7 @@ tcp_do_segment(struct tcpcb *tp, struct mbuf *m, struct tcphdr *th, * SYN-RECEIVED* -> FIN-WAIT-1 */ tp->t_starttime = ticks; - if (IS_FASTOPEN(tp->t_flags) && tp->t_tfo_pending) { + if ((tp->t_flags & TF_FASTOPEN) && tp->t_tfo_pending) { tcp_fastopen_decrement_counter(tp->t_tfo_pending); tp->t_tfo_pending = NULL; } @@ -2486,7 +2486,7 @@ tcp_do_segment(struct tcpcb *tp, struct mbuf *m, struct tcphdr *th, * snd_cwnd reduction that occurs when a TFO SYN|ACK * is retransmitted. */ - if (!IS_FASTOPEN(tp->t_flags)) + if (!(tp->t_flags & TF_FASTOPEN)) cc_conn_init(tp); tcp_timer_activate(tp, TT_KEEP, TP_KEEPIDLE(tp)); } @@ -3167,7 +3167,7 @@ dodata: /* XXX */ * connection then we just ignore the text. */ tfo_syn = ((tp->t_state == TCPS_SYN_RECEIVED) && - IS_FASTOPEN(tp->t_flags)); + (tp->t_flags & TF_FASTOPEN)); if ((tlen || (thflags & TH_FIN) || (tfo_syn && tlen > 0)) && TCPS_HAVERCVDFIN(tp->t_state) == 0) { tcp_seq save_start = th->th_seq; diff --git a/sys/netinet/tcp_output.c b/sys/netinet/tcp_output.c index 26a8ed70ceff..6f7bf6f8b029 100644 --- a/sys/netinet/tcp_output.c +++ b/sys/netinet/tcp_output.c @@ -239,10 +239,10 @@ tcp_default_output(struct tcpcb *tp) * only allow the initial SYN or SYN|ACK and those sent * by the retransmit timer. */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && ((tp->t_state == TCPS_SYN_SENT) || - (tp->t_state == TCPS_SYN_RECEIVED)) && - SEQ_GT(tp->snd_max, tp->snd_una) && /* initial SYN or SYN|ACK sent */ + (tp->t_state == TCPS_SYN_RECEIVED)) && + SEQ_GT(tp->snd_max, tp->snd_una) && /* SYN or SYN|ACK sent */ (tp->snd_nxt != tp->snd_una)) /* not a retransmit */ return (0); @@ -436,7 +436,7 @@ after_sack_rexmit: * When sending additional segments following a TFO SYN|ACK, * do not include the SYN bit. */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && (tp->t_state == TCPS_SYN_RECEIVED)) flags &= ~TH_SYN; off--, len++; @@ -464,7 +464,7 @@ after_sack_rexmit: * * - When the socket is in the CLOSED state (RST is being sent) */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && (((flags & TH_SYN) && (tp->t_rxtshift > 0)) || ((tp->t_state == TCPS_SYN_SENT) && (tp->t_tfo_client_cookie_len == 0)) || @@ -801,7 +801,7 @@ send: * have caused the original SYN or SYN|ACK to have * been dropped by a middlebox. */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && (tp->t_rxtshift == 0)) { if (tp->t_state == TCPS_SYN_RECEIVED) { to.to_tfo_len = TCP_FASTOPEN_COOKIE_LEN; @@ -875,7 +875,7 @@ send: * If we wanted a TFO option to be added, but it was unable * to fit, ensure no data is sent. */ - if (IS_FASTOPEN(tp->t_flags) && wanted_cookie && + if ((tp->t_flags & TF_FASTOPEN) && wanted_cookie && !(to.to_flags & TOF_FASTOPEN)) len = 0; } diff --git a/sys/netinet/tcp_stacks/bbr.c b/sys/netinet/tcp_stacks/bbr.c index 934b35bd22d7..4be12e824926 100644 --- a/sys/netinet/tcp_stacks/bbr.c +++ b/sys/netinet/tcp_stacks/bbr.c @@ -8188,7 +8188,7 @@ bbr_process_data(struct mbuf *m, struct tcphdr *th, struct socket *so, * then we just ignore the text. */ tfo_syn = ((tp->t_state == TCPS_SYN_RECEIVED) && - IS_FASTOPEN(tp->t_flags)); + (tp->t_flags & TF_FASTOPEN)); if ((tlen || (thflags & TH_FIN) || (tfo_syn && tlen > 0)) && TCPS_HAVERCVDFIN(tp->t_state) == 0) { tcp_seq save_start = th->th_seq; @@ -8773,7 +8773,7 @@ bbr_do_syn_sent(struct mbuf *m, struct tcphdr *th, struct socket *so, * If not all the data that was sent in the TFO SYN * has been acked, resend the remainder right away. */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && (tp->snd_una != tp->snd_max)) { tp->snd_nxt = th->th_ack; tfo_partial = 1; @@ -8939,7 +8939,7 @@ bbr_do_syn_recv(struct mbuf *m, struct tcphdr *th, struct socket *so, ctf_do_dropwithreset(m, tp, th, BANDLIM_RST_OPENPORT, tlen); return (1); } - if (IS_FASTOPEN(tp->t_flags)) { + if (tp->t_flags & TF_FASTOPEN) { /* * When a TFO connection is in SYN_RECEIVED, the only valid * packets are the initial SYN, a retransmit/copy of the @@ -9015,7 +9015,7 @@ bbr_do_syn_recv(struct mbuf *m, struct tcphdr *th, struct socket *so, * processing; else drop segment and return. */ if ((thflags & TH_ACK) == 0) { - if (IS_FASTOPEN(tp->t_flags)) { + if (tp->t_flags & TF_FASTOPEN) { cc_conn_init(tp); } return (bbr_process_data(m, th, so, tp, drop_hdrlen, tlen, @@ -9052,7 +9052,7 @@ bbr_do_syn_recv(struct mbuf *m, struct tcphdr *th, struct socket *so, /* Drop off any SYN in the send map (probably not there) */ if (thflags & TH_ACK) bbr_log_syn(tp, to); - if (IS_FASTOPEN(tp->t_flags) && tp->t_tfo_pending) { + if ((tp->t_flags & TF_FASTOPEN) && tp->t_tfo_pending) { tcp_fastopen_decrement_counter(tp->t_tfo_pending); tp->t_tfo_pending = NULL; } @@ -9074,7 +9074,7 @@ bbr_do_syn_recv(struct mbuf *m, struct tcphdr *th, struct socket *so, * is not harmless as it would undo the snd_cwnd reduction * that occurs when a TFO SYN|ACK is retransmitted. */ - if (!IS_FASTOPEN(tp->t_flags)) + if (!(tp->t_flags & TF_FASTOPEN)) cc_conn_init(tp); } /* @@ -11408,7 +11408,7 @@ bbr_do_segment_nounlock(struct tcpcb *tp, struct mbuf *m, struct tcphdr *th, if ((tp->t_flags & TF_SACK_PERMIT) && (to.to_flags & TOF_SACKPERM) == 0) tp->t_flags &= ~TF_SACK_PERMIT; - if (IS_FASTOPEN(tp->t_flags)) { + if (tp->t_flags & TF_FASTOPEN) { if (to.to_flags & TOF_FASTOPEN) { uint16_t mss; @@ -12062,7 +12062,7 @@ bbr_output_wtime(struct tcpcb *tp, const struct timeval *tv) * For TFO connections in SYN_RECEIVED, only allow the initial * SYN|ACK and those sent by the retransmit timer. */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && ((tp->t_state == TCPS_SYN_RECEIVED) || (tp->t_state == TCPS_SYN_SENT)) && SEQ_GT(tp->snd_max, tp->snd_una) && /* initial SYN or SYN|ACK sent */ @@ -12381,7 +12381,7 @@ recheck_resend: * When sending additional segments following a TFO SYN|ACK, * do not include the SYN bit. */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && (tp->t_state == TCPS_SYN_RECEIVED)) flags &= ~TH_SYN; sb_offset--, len++; @@ -12412,7 +12412,7 @@ recheck_resend: * actively created socket * - When the socket is in the CLOSED state (RST is being sent) */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && (((flags & TH_SYN) && (tp->t_rxtshift > 0)) || ((tp->t_state == TCPS_SYN_SENT) && (tp->t_tfo_client_cookie_len == 0)) || @@ -12422,7 +12422,7 @@ recheck_resend: rsm = NULL; } /* Without fast-open there should never be data sent on a SYN */ - if ((flags & TH_SYN) && (!IS_FASTOPEN(tp->t_flags))) + if ((flags & TH_SYN) && !(tp->t_flags & TF_FASTOPEN)) len = 0; if (len <= 0) { /* @@ -12846,7 +12846,7 @@ send: * have caused the original SYN or SYN|ACK to have * been dropped by a middlebox. */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && (tp->t_rxtshift == 0)) { if (tp->t_state == TCPS_SYN_RECEIVED) { to.to_tfo_len = TCP_FASTOPEN_COOKIE_LEN; @@ -12902,7 +12902,7 @@ send: * If we wanted a TFO option to be added, but it was unable * to fit, ensure no data is sent. */ - if (IS_FASTOPEN(tp->t_flags) && wanted_cookie && + if ((tp->t_flags & TF_FASTOPEN) && wanted_cookie && !(to.to_flags & TOF_FASTOPEN)) len = 0; } diff --git a/sys/netinet/tcp_stacks/rack.c b/sys/netinet/tcp_stacks/rack.c index 1fe07fa8d641..f89fd46f2a85 100644 --- a/sys/netinet/tcp_stacks/rack.c +++ b/sys/netinet/tcp_stacks/rack.c @@ -13585,7 +13585,7 @@ rack_process_data(struct mbuf *m, struct tcphdr *th, struct socket *so, * then we just ignore the text. */ tfo_syn = ((tp->t_state == TCPS_SYN_RECEIVED) && - IS_FASTOPEN(tp->t_flags)); + (tp->t_flags & TF_FASTOPEN)); if ((tlen || (thflags & TH_FIN) || (tfo_syn && tlen > 0)) && TCPS_HAVERCVDFIN(tp->t_state) == 0) { tcp_seq save_start = th->th_seq; @@ -14194,7 +14194,7 @@ rack_do_syn_sent(struct mbuf *m, struct tcphdr *th, struct socket *so, * If not all the data that was sent in the TFO SYN * has been acked, resend the remainder right away. */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && (tp->snd_una != tp->snd_max)) { /* Was it a partial ack? */ if (SEQ_LT(th->th_ack, tp->snd_max)) @@ -14373,7 +14373,7 @@ rack_do_syn_recv(struct mbuf *m, struct tcphdr *th, struct socket *so, ctf_do_dropwithreset(m, tp, th, BANDLIM_RST_OPENPORT, tlen); return (1); } - if (IS_FASTOPEN(tp->t_flags)) { + if (tp->t_flags & TF_FASTOPEN) { /* * When a TFO connection is in SYN_RECEIVED, the * only valid packets are the initial SYN, a @@ -14454,7 +14454,7 @@ rack_do_syn_recv(struct mbuf *m, struct tcphdr *th, struct socket *so, * processing; else drop segment and return. */ if ((thflags & TH_ACK) == 0) { - if (IS_FASTOPEN(tp->t_flags)) { + if (tp->t_flags & TF_FASTOPEN) { rack_cc_conn_init(tp); } return (rack_process_data(m, th, so, tp, drop_hdrlen, tlen, @@ -14475,7 +14475,7 @@ rack_do_syn_recv(struct mbuf *m, struct tcphdr *th, struct socket *so, * FIN-WAIT-1 */ tp->t_starttime = ticks; - if (IS_FASTOPEN(tp->t_flags) && tp->t_tfo_pending) { + if ((tp->t_flags & TF_FASTOPEN) && tp->t_tfo_pending) { tcp_fastopen_decrement_counter(tp->t_tfo_pending); tp->t_tfo_pending = NULL; } @@ -14492,7 +14492,7 @@ rack_do_syn_recv(struct mbuf *m, struct tcphdr *th, struct socket *so, * is not harmless as it would undo the snd_cwnd reduction * that occurs when a TFO SYN|ACK is retransmitted. */ - if (!IS_FASTOPEN(tp->t_flags)) + if (!(tp->t_flags & TF_FASTOPEN)) rack_cc_conn_init(tp); } /* @@ -18198,7 +18198,7 @@ rack_do_segment_nounlock(struct tcpcb *tp, struct mbuf *m, struct tcphdr *th, if ((tp->t_flags & TF_SACK_PERMIT) && (to.to_flags & TOF_SACKPERM) == 0) tp->t_flags &= ~TF_SACK_PERMIT; - if (IS_FASTOPEN(tp->t_flags)) { + if (tp->t_flags & TF_FASTOPEN) { if (to.to_flags & TOF_FASTOPEN) { uint16_t mss; @@ -21346,7 +21346,7 @@ rack_output(struct tcpcb *tp) * For TFO connections in SYN_RECEIVED, only allow the initial * SYN|ACK and those sent by the retransmit timer. */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && (tp->t_state == TCPS_SYN_RECEIVED) && SEQ_GT(tp->snd_max, tp->snd_una) && /* initial SYN|ACK sent */ (rack->r_ctl.rc_resend == NULL)) { /* not a retransmit */ @@ -21494,7 +21494,7 @@ rack_output(struct tcpcb *tp) * only allow the initial SYN or SYN|ACK and those sent * by the retransmit timer. */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && ((tp->t_state == TCPS_SYN_RECEIVED) || (tp->t_state == TCPS_SYN_SENT)) && SEQ_GT(tp->snd_max, tp->snd_una) && /* initial SYN or SYN|ACK sent */ @@ -21949,7 +21949,8 @@ skip_fast_output: } SOCKBUF_LOCK(sb); if ((sack_rxmit == 0) && - (TCPS_HAVEESTABLISHED(tp->t_state) || IS_FASTOPEN(tp->t_flags))) { + (TCPS_HAVEESTABLISHED(tp->t_state) || + (tp->t_flags & TF_FASTOPEN))) { /* * We are not retransmitting (sack_rxmit is 0) so we * are sending new data. This is always based on snd_max. @@ -22075,7 +22076,7 @@ skip_fast_output: * no data please. */ if ((sack_rxmit == 0) && - (!IS_FASTOPEN(tp->t_flags))){ + !(tp->t_flags & TF_FASTOPEN)) { len = 0; sb_offset = 0; } @@ -22135,7 +22136,7 @@ skip_fast_output: * When sending additional segments following a TFO SYN|ACK, * do not include the SYN bit. */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && (tp->t_state == TCPS_SYN_RECEIVED)) flags &= ~TH_SYN; } @@ -22160,7 +22161,7 @@ skip_fast_output: * * - When the socket is in the CLOSED state (RST is being sent) */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && (((flags & TH_SYN) && (tp->t_rxtshift > 0)) || ((tp->t_state == TCPS_SYN_SENT) && (tp->t_tfo_client_cookie_len == 0)) || @@ -22169,7 +22170,7 @@ skip_fast_output: len = 0; } /* Without fast-open there should never be data sent on a SYN */ - if ((flags & TH_SYN) && (!IS_FASTOPEN(tp->t_flags))) { + if ((flags & TH_SYN) && !(tp->t_flags & TF_FASTOPEN)) { len = 0; } if ((len > segsiz) && (tcp_dsack_block_exists(tp))) { @@ -22498,7 +22499,7 @@ just_return_nolock: { int app_limited = CTF_JR_SENT_DATA; - if ((IS_FASTOPEN(tp->t_flags) == 0) && + if ((tp->t_flags & TF_FASTOPEN) == 0 && (flags & TH_FIN) && (len == 0) && (sbused(sb) == (tp->snd_max - tp->snd_una)) && @@ -22866,7 +22867,7 @@ send: * have caused the original SYN or SYN|ACK to have * been dropped by a middlebox. */ - if (IS_FASTOPEN(tp->t_flags) && + if ((tp->t_flags & TF_FASTOPEN) && (tp->t_rxtshift == 0)) { if (tp->t_state == TCPS_SYN_RECEIVED) { to.to_tfo_len = TCP_FASTOPEN_COOKIE_LEN; @@ -22964,7 +22965,7 @@ send: * If we wanted a TFO option to be added, but it was unable * to fit, ensure no data is sent. */ - if (IS_FASTOPEN(tp->t_flags) && wanted_cookie && + if ((tp->t_flags & TF_FASTOPEN) && wanted_cookie && !(to.to_flags & TOF_FASTOPEN)) len = 0; } diff --git a/sys/netinet/tcp_subr.c b/sys/netinet/tcp_subr.c index 2bb61cfcbc56..f618bc1ba04b 100644 --- a/sys/netinet/tcp_subr.c +++ b/sys/netinet/tcp_subr.c @@ -3282,7 +3282,7 @@ tcp_drop_syn_sent(struct inpcb *inp, int errno) if (tp->t_state != TCPS_SYN_SENT) return (inp); - if (IS_FASTOPEN(tp->t_flags)) + if (tp->t_flags & TF_FASTOPEN) tcp_fastopen_disable_path(tp); tp = tcp_drop(tp, errno); diff --git a/sys/netinet/tcp_syncache.c b/sys/netinet/tcp_syncache.c index b462e2fd799d..c21dbbb58e31 100644 --- a/sys/netinet/tcp_syncache.c +++ b/sys/netinet/tcp_syncache.c @@ -1447,7 +1447,7 @@ syncache_add(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, win = so->sol_sbrcv_hiwat; ltflags = (tp->t_flags & (TF_NOOPT | TF_SIGNATURE)); - if (V_tcp_fastopen_server_enable && IS_FASTOPEN(tp->t_flags) && + if (V_tcp_fastopen_server_enable && (tp->t_flags & TF_FASTOPEN) && (tp->t_tfo_pending != NULL) && (to->to_flags & TOF_FASTOPEN)) { /* diff --git a/sys/netinet/tcp_usrreq.c b/sys/netinet/tcp_usrreq.c index 916fe33e8704..abdc2de545e9 100644 --- a/sys/netinet/tcp_usrreq.c +++ b/sys/netinet/tcp_usrreq.c @@ -397,7 +397,7 @@ tcp_usr_listen(struct socket *so, int backlog, struct thread *td) } SOCK_UNLOCK(so); - if (IS_FASTOPEN(tp->t_flags)) + if (tp->t_flags & TF_FASTOPEN) tp->t_tfo_pending = tcp_fastopen_alloc_counter(); out: @@ -454,7 +454,7 @@ tcp6_usr_listen(struct socket *so, int backlog, struct thread *td) } SOCK_UNLOCK(so); - if (IS_FASTOPEN(tp->t_flags)) + if (tp->t_flags & TF_FASTOPEN) tp->t_tfo_pending = tcp_fastopen_alloc_counter(); if (error != 0) @@ -887,8 +887,7 @@ tcp_usr_rcvd(struct socket *so, int flags) * application response data, or failing that, when the DELACK timer * expires. */ - if (IS_FASTOPEN(tp->t_flags) && - (tp->t_state == TCPS_SYN_RECEIVED)) + if ((tp->t_flags & TF_FASTOPEN) && (tp->t_state == TCPS_SYN_RECEIVED)) goto out; #ifdef TCP_OFFLOAD if (tp->t_flags & TF_TOE) @@ -1095,7 +1094,7 @@ tcp_usr_send(struct socket *so, int flags, struct mbuf *m, sbflush(&so->so_snd); goto out; } - if (IS_FASTOPEN(tp->t_flags)) + if (tp->t_flags & TF_FASTOPEN) tcp_fastopen_connect(tp); else { tp->snd_wnd = TTCP_CLIENT_SND_WND; @@ -1161,7 +1160,7 @@ tcp_usr_send(struct socket *so, int flags, struct mbuf *m, /* * Not going to contemplate SYN|URG */ - if (IS_FASTOPEN(tp->t_flags)) + if (tp->t_flags & TF_FASTOPEN) tp->t_flags &= ~TF_FASTOPEN; #ifdef INET6 if (isipv6) @@ -1578,7 +1577,7 @@ tcp_fill_info(const struct tcpcb *tp, struct tcp_info *ti) default: break; } - if (IS_FASTOPEN(tp->t_flags)) + if (tp->t_flags & TF_FASTOPEN) ti->tcpi_options |= TCPI_OPT_TFO; ti->tcpi_rto = tp->t_rxtcur * tick; @@ -2685,7 +2684,7 @@ tcp_disconnect(struct tcpcb *tp) * socket is still open. */ if (tp->t_state < TCPS_ESTABLISHED && - !(tp->t_state > TCPS_LISTEN && IS_FASTOPEN(tp->t_flags))) { + !(tp->t_state > TCPS_LISTEN && (tp->t_flags & TF_FASTOPEN))) { tp = tcp_close(tp); KASSERT(tp != NULL, ("tcp_disconnect: tcp_close() returned NULL")); diff --git a/sys/netinet/tcp_var.h b/sys/netinet/tcp_var.h index 7b5c57d39213..e49d682896c0 100644 --- a/sys/netinet/tcp_var.h +++ b/sys/netinet/tcp_var.h @@ -812,14 +812,6 @@ tcp_packets_this_ack(struct tcpcb *tp, tcp_seq ack) #define ENTER_RECOVERY(t_flags) t_flags |= (TF_CONGRECOVERY | TF_FASTRECOVERY) #define EXIT_RECOVERY(t_flags) t_flags &= ~(TF_CONGRECOVERY | TF_FASTRECOVERY) -#if defined(_KERNEL) -#if !defined(TCP_RFC7413) -#define IS_FASTOPEN(t_flags) (false) -#else -#define IS_FASTOPEN(t_flags) (t_flags & TF_FASTOPEN) -#endif -#endif - #define BYTES_THIS_ACK(tp, th) (th->th_ack - tp->snd_una) /*