aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/tcp.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/net/tcp.h')
-rw-r--r--include/net/tcp.h29
1 files changed, 15 insertions, 14 deletions
diff --git a/include/net/tcp.h b/include/net/tcp.h
index 5bba80fbd1d9..d1980054ec75 100644
--- a/include/net/tcp.h
+++ b/include/net/tcp.h
@@ -61,9 +61,6 @@ extern void tcp_time_wait(struct sock *sk, int state, int timeo);
61 */ 61 */
62#define MAX_TCP_WINDOW 32767U 62#define MAX_TCP_WINDOW 32767U
63 63
64/* Offer an initial receive window of 10 mss. */
65#define TCP_DEFAULT_INIT_RCVWND 10
66
67/* Minimal accepted MSS. It is (60+60+8) - (20+20). */ 64/* Minimal accepted MSS. It is (60+60+8) - (20+20). */
68#define TCP_MIN_MSS 88U 65#define TCP_MIN_MSS 88U
69 66
@@ -1047,6 +1044,8 @@ static inline void tcp_sack_reset(struct tcp_options_received *rx_opt)
1047 rx_opt->num_sacks = 0; 1044 rx_opt->num_sacks = 0;
1048} 1045}
1049 1046
1047extern u32 tcp_default_init_rwnd(u32 mss);
1048
1050/* Determine a window scaling and initial window to offer. */ 1049/* Determine a window scaling and initial window to offer. */
1051extern void tcp_select_initial_window(int __space, __u32 mss, 1050extern void tcp_select_initial_window(int __space, __u32 mss,
1052 __u32 *rcv_wnd, __u32 *window_clamp, 1051 __u32 *rcv_wnd, __u32 *window_clamp,
@@ -1193,7 +1192,6 @@ static inline void tcp_mib_init(struct net *net)
1193static inline void tcp_clear_retrans_hints_partial(struct tcp_sock *tp) 1192static inline void tcp_clear_retrans_hints_partial(struct tcp_sock *tp)
1194{ 1193{
1195 tp->lost_skb_hint = NULL; 1194 tp->lost_skb_hint = NULL;
1196 tp->scoreboard_skb_hint = NULL;
1197} 1195}
1198 1196
1199static inline void tcp_clear_all_retrans_hints(struct tcp_sock *tp) 1197static inline void tcp_clear_all_retrans_hints(struct tcp_sock *tp)
@@ -1284,11 +1282,13 @@ static inline struct tcp_md5sig_key *tcp_md5_do_lookup(struct sock *sk,
1284#define tcp_twsk_md5_key(twsk) NULL 1282#define tcp_twsk_md5_key(twsk) NULL
1285#endif 1283#endif
1286 1284
1287extern struct tcp_md5sig_pool __percpu *tcp_alloc_md5sig_pool(struct sock *); 1285extern bool tcp_alloc_md5sig_pool(void);
1288extern void tcp_free_md5sig_pool(void);
1289 1286
1290extern struct tcp_md5sig_pool *tcp_get_md5sig_pool(void); 1287extern struct tcp_md5sig_pool *tcp_get_md5sig_pool(void);
1291extern void tcp_put_md5sig_pool(void); 1288static inline void tcp_put_md5sig_pool(void)
1289{
1290 local_bh_enable();
1291}
1292 1292
1293extern int tcp_md5_hash_header(struct tcp_md5sig_pool *, const struct tcphdr *); 1293extern int tcp_md5_hash_header(struct tcp_md5sig_pool *, const struct tcphdr *);
1294extern int tcp_md5_hash_skb_data(struct tcp_md5sig_pool *, const struct sk_buff *, 1294extern int tcp_md5_hash_skb_data(struct tcp_md5sig_pool *, const struct sk_buff *,
@@ -1319,9 +1319,9 @@ void tcp_fastopen_cookie_gen(__be32 addr, struct tcp_fastopen_cookie *foc);
1319 1319
1320/* Fastopen key context */ 1320/* Fastopen key context */
1321struct tcp_fastopen_context { 1321struct tcp_fastopen_context {
1322 struct crypto_cipher __rcu *tfm; 1322 struct crypto_cipher *tfm;
1323 __u8 key[TCP_FASTOPEN_KEY_LENGTH]; 1323 __u8 key[TCP_FASTOPEN_KEY_LENGTH];
1324 struct rcu_head rcu; 1324 struct rcu_head rcu;
1325}; 1325};
1326 1326
1327/* write queue abstraction */ 1327/* write queue abstraction */
@@ -1540,15 +1540,14 @@ extern struct request_sock_ops tcp6_request_sock_ops;
1540 1540
1541extern void tcp_v4_destroy_sock(struct sock *sk); 1541extern void tcp_v4_destroy_sock(struct sock *sk);
1542 1542
1543extern int tcp_v4_gso_send_check(struct sk_buff *skb);
1544extern struct sk_buff *tcp_tso_segment(struct sk_buff *skb, 1543extern struct sk_buff *tcp_tso_segment(struct sk_buff *skb,
1545 netdev_features_t features); 1544 netdev_features_t features);
1546extern struct sk_buff **tcp_gro_receive(struct sk_buff **head, 1545extern struct sk_buff **tcp_gro_receive(struct sk_buff **head,
1547 struct sk_buff *skb); 1546 struct sk_buff *skb);
1548extern struct sk_buff **tcp4_gro_receive(struct sk_buff **head,
1549 struct sk_buff *skb);
1550extern int tcp_gro_complete(struct sk_buff *skb); 1547extern int tcp_gro_complete(struct sk_buff *skb);
1551extern int tcp4_gro_complete(struct sk_buff *skb); 1548
1549extern void __tcp_v4_send_check(struct sk_buff *skb, __be32 saddr,
1550 __be32 daddr);
1552 1551
1553#ifdef CONFIG_PROC_FS 1552#ifdef CONFIG_PROC_FS
1554extern int tcp4_proc_init(void); 1553extern int tcp4_proc_init(void);
@@ -1583,6 +1582,8 @@ struct tcp_request_sock_ops {
1583#endif 1582#endif
1584}; 1583};
1585 1584
1585extern int tcpv4_offload_init(void);
1586
1586extern void tcp_v4_init(void); 1587extern void tcp_v4_init(void);
1587extern void tcp_init(void); 1588extern void tcp_init(void);
1588 1589