about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--include/netinet/tcp.h58
1 files changed, 58 insertions, 0 deletions
diff --git a/include/netinet/tcp.h b/include/netinet/tcp.h
index 5212ef71..5639b89a 100644
--- a/include/netinet/tcp.h
+++ b/include/netinet/tcp.h
@@ -79,6 +79,64 @@ struct tcphdr
 	u_int16_t check;
 	u_int16_t urg_ptr;
 };
+
+#define TCPI_OPT_TIMESTAMPS	1
+#define TCPI_OPT_SACK		2
+#define TCPI_OPT_WSCALE		4
+#define TCPI_OPT_ECN		8
+
+#define TCP_CA_Open		0
+#define TCP_CA_Disorder		1
+#define TCP_CA_CWR		2
+#define TCP_CA_Recovery		3
+#define TCP_CA_Loss		4
+
+struct tcp_info
+{
+	u_int8_t tcpi_state;
+	u_int8_t tcpi_ca_state;
+	u_int8_t tcpi_retransmits;
+	u_int8_t tcpi_probes;
+	u_int8_t tcpi_backoff;
+	u_int8_t tcpi_options;
+	u_int8_t tcpi_snd_wscale : 4, tcpi_rcv_wscale : 4;
+	u_int32_t tcpi_rto;
+	u_int32_t tcpi_ato;
+	u_int32_t tcpi_snd_mss;
+	u_int32_t tcpi_rcv_mss;
+	u_int32_t tcpi_unacked;
+	u_int32_t tcpi_sacked;
+	u_int32_t tcpi_lost;
+	u_int32_t tcpi_retrans;
+	u_int32_t tcpi_fackets;
+	u_int32_t tcpi_last_data_sent;
+	u_int32_t tcpi_last_ack_sent;
+	u_int32_t tcpi_last_data_recv;
+	u_int32_t tcpi_last_ack_recv;
+	u_int32_t tcpi_pmtu;
+	u_int32_t tcpi_rcv_ssthresh;
+	u_int32_t tcpi_rtt;
+	u_int32_t tcpi_rttvar;
+	u_int32_t tcpi_snd_ssthresh;
+	u_int32_t tcpi_snd_cwnd;
+	u_int32_t tcpi_advmss;
+	u_int32_t tcpi_reordering;
+	u_int32_t tcpi_rcv_rtt;
+	u_int32_t tcpi_rcv_space;
+	u_int32_t tcpi_total_retrans;
+};
+
+#define TCP_MD5SIG_MAXKEYLEN    80
+
+struct tcp_md5sig
+{
+	struct sockaddr_storage tcpm_addr;
+	u_int16_t __tcpm_pad1;
+	u_int16_t tcpm_keylen;
+	u_int32_t __tcpm_pad2;
+	u_int8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN];
+};
+
 #endif
 
 #endif