aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/linux/snmp.h1
-rw-r--r--include/linux/tcp.h6
-rw-r--r--include/net/tcp.h9
3 files changed, 15 insertions, 1 deletions
diff --git a/include/linux/snmp.h b/include/linux/snmp.h
index e5fcbd079e4a..00bc189cb395 100644
--- a/include/linux/snmp.h
+++ b/include/linux/snmp.h
@@ -238,6 +238,7 @@ enum
238 LINUX_MIB_TCPOFOMERGE, /* TCPOFOMerge */ 238 LINUX_MIB_TCPOFOMERGE, /* TCPOFOMerge */
239 LINUX_MIB_TCPCHALLENGEACK, /* TCPChallengeACK */ 239 LINUX_MIB_TCPCHALLENGEACK, /* TCPChallengeACK */
240 LINUX_MIB_TCPSYNCHALLENGE, /* TCPSYNChallenge */ 240 LINUX_MIB_TCPSYNCHALLENGE, /* TCPSYNChallenge */
241 LINUX_MIB_TCPFASTOPENACTIVE, /* TCPFastOpenActive */
241 __LINUX_MIB_MAX 242 __LINUX_MIB_MAX
242}; 243};
243 244
diff --git a/include/linux/tcp.h b/include/linux/tcp.h
index 12948f543839..1edf96afab44 100644
--- a/include/linux/tcp.h
+++ b/include/linux/tcp.h
@@ -386,7 +386,8 @@ struct tcp_sock {
386 unused : 1; 386 unused : 1;
387 u8 repair_queue; 387 u8 repair_queue;
388 u8 do_early_retrans:1,/* Enable RFC5827 early-retransmit */ 388 u8 do_early_retrans:1,/* Enable RFC5827 early-retransmit */
389 early_retrans_delayed:1; /* Delayed ER timer installed */ 389 early_retrans_delayed:1, /* Delayed ER timer installed */
390 syn_fastopen:1; /* SYN includes Fast Open option */
390 391
391/* RTT measurement */ 392/* RTT measurement */
392 u32 srtt; /* smoothed round trip time << 3 */ 393 u32 srtt; /* smoothed round trip time << 3 */
@@ -500,6 +501,9 @@ struct tcp_sock {
500 struct tcp_md5sig_info __rcu *md5sig_info; 501 struct tcp_md5sig_info __rcu *md5sig_info;
501#endif 502#endif
502 503
504/* TCP fastopen related information */
505 struct tcp_fastopen_request *fastopen_req;
506
503 /* When the cookie options are generated and exchanged, then this 507 /* When the cookie options are generated and exchanged, then this
504 * object holds a reference to them (cookie_values->kref). Also 508 * object holds a reference to them (cookie_values->kref). Also
505 * contains related tcp_cookie_transactions fields. 509 * contains related tcp_cookie_transactions fields.
diff --git a/include/net/tcp.h b/include/net/tcp.h
index e601da197361..867557b4244a 100644
--- a/include/net/tcp.h
+++ b/include/net/tcp.h
@@ -1289,6 +1289,15 @@ extern int tcp_md5_hash_skb_data(struct tcp_md5sig_pool *, const struct sk_buff
1289extern int tcp_md5_hash_key(struct tcp_md5sig_pool *hp, 1289extern int tcp_md5_hash_key(struct tcp_md5sig_pool *hp,
1290 const struct tcp_md5sig_key *key); 1290 const struct tcp_md5sig_key *key);
1291 1291
1292struct tcp_fastopen_request {
1293 /* Fast Open cookie. Size 0 means a cookie request */
1294 struct tcp_fastopen_cookie cookie;
1295 struct msghdr *data; /* data in MSG_FASTOPEN */
1296 u16 copied; /* queued in tcp_connect() */
1297};
1298
1299void tcp_free_fastopen_req(struct tcp_sock *tp);
1300
1292/* write queue abstraction */ 1301/* write queue abstraction */
1293static inline void tcp_write_queue_purge(struct sock *sk) 1302static inline void tcp_write_queue_purge(struct sock *sk)
1294{ 1303{