Revert r334843, and partially revert r335180.

tcp_outflags[] were defined since 4BSD and are defined nowadays in
all its descendants. Removing them breaks third party application.
This commit is contained in:
Gleb Smirnoff 2018-06-23 06:53:53 +00:00
parent becfb1625c
commit a00f4ac22f
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=335577
4 changed files with 24 additions and 22 deletions

View File

@ -78,8 +78,27 @@
#define TCPS_HAVERCVDFIN(s) \
((s) == TCPS_CLOSE_WAIT || ((s) >= TCPS_CLOSING && (s) != TCPS_FIN_WAIT_2))
extern u_char tcp_outflags[TCP_NSTATES];
#ifdef TCPOUTFLAGS
/*
* Flags used when sending segments in tcp_output. Basic flags (TH_RST,
* TH_ACK,TH_SYN,TH_FIN) are totally determined by state, with the proviso
* that TH_FIN is sent only if all data queued for output is included in the
* segment.
*/
static u_char tcp_outflags[TCP_NSTATES] = {
TH_RST|TH_ACK, /* 0, CLOSED */
0, /* 1, LISTEN */
TH_SYN, /* 2, SYN_SENT */
TH_SYN|TH_ACK, /* 3, SYN_RECEIVED */
TH_ACK, /* 4, ESTABLISHED */
TH_ACK, /* 5, CLOSE_WAIT */
TH_FIN|TH_ACK, /* 6, FIN_WAIT_1 */
TH_FIN|TH_ACK, /* 7, CLOSING */
TH_FIN|TH_ACK, /* 8, LAST_ACK */
TH_ACK, /* 9, FIN_WAIT_2 */
TH_ACK, /* 10, TIME_WAIT */
};
#endif
#ifdef KPROF
int tcp_acounts[TCP_NSTATES][PRU_NREQ];

View File

@ -45,6 +45,7 @@ __FBSDID("$FreeBSD$");
#include <netinet/in_pcb.h>
#include <netinet/tcp.h>
#include <netinet/tcp_offload.h>
#define TCPOUTFLAGS
#include <netinet/tcp_fsm.h>
#include <netinet/tcp_var.h>
#include <netinet/toecore.h>

View File

@ -72,6 +72,7 @@ __FBSDID("$FreeBSD$");
#include <netinet6/ip6_var.h>
#endif
#include <netinet/tcp.h>
#define TCPOUTFLAGS
#include <netinet/tcp_fsm.h>
#include <netinet/tcp_log_buf.h>
#include <netinet/tcp_seq.h>
@ -167,26 +168,6 @@ hhook_run_tcp_est_out(struct tcpcb *tp, struct tcphdr *th,
}
#endif
/*
* Flags used when sending segments in tcp_output. Basic flags (TH_RST,
* TH_ACK,TH_SYN,TH_FIN) are totally determined by state, with the proviso
* that TH_FIN is sent only if all data queued for output is included in the
* segment.
*/
u_char tcp_outflags[TCP_NSTATES] = {
TH_RST|TH_ACK, /* 0, CLOSED */
0, /* 1, LISTEN */
TH_SYN, /* 2, SYN_SENT */
TH_SYN|TH_ACK, /* 3, SYN_RECEIVED */
TH_ACK, /* 4, ESTABLISHED */
TH_ACK, /* 5, CLOSE_WAIT */
TH_FIN|TH_ACK, /* 6, FIN_WAIT_1 */
TH_FIN|TH_ACK, /* 7, CLOSING */
TH_FIN|TH_ACK, /* 8, LAST_ACK */
TH_ACK, /* 9, FIN_WAIT_2 */
TH_ACK, /* 10, TIME_WAIT */
};
/*
* CC wrapper hook functions
*/

View File

@ -76,6 +76,7 @@ __FBSDID("$FreeBSD$");
#include <netinet6/in6_pcb.h>
#include <netinet6/ip6_var.h>
#include <netinet/tcp.h>
#define TCPOUTFLAGS
#include <netinet/tcp_fsm.h>
#include <netinet/tcp_log_buf.h>
#include <netinet/tcp_seq.h>