|
#define | FASTRETRANS_DEBUG 1 |
|
#define | MAX_TCP_HEADER (128 + MAX_HEADER) |
|
#define | MAX_TCP_OPTION_SPACE 40 |
|
#define | MAX_TCP_WINDOW 32767U |
|
#define | TCP_DEFAULT_INIT_RCVWND 10 |
|
#define | TCP_MIN_MSS 88U |
|
#define | TCP_BASE_MSS 512 |
|
#define | TCP_FASTRETRANS_THRESH 3 |
|
#define | TCP_MAX_REORDERING 127 |
|
#define | TCP_MAX_QUICKACKS 16U |
|
#define | TCP_URG_VALID 0x0100 |
|
#define | TCP_URG_NOTYET 0x0200 |
|
#define | TCP_URG_READ 0x0400 |
|
#define | TCP_RETR1 |
|
#define | TCP_RETR2 |
|
#define | TCP_SYN_RETRIES |
|
#define | TCP_SYNACK_RETRIES |
|
#define | TCP_TIMEWAIT_LEN |
|
#define | TCP_FIN_TIMEOUT TCP_TIMEWAIT_LEN |
|
#define | TCP_DELACK_MAX ((unsigned)(HZ/5)) /* maximal time to delay before sending an ACK */ |
|
#define | TCP_DELACK_MIN 4U |
|
#define | TCP_ATO_MIN 4U |
|
#define | TCP_RTO_MAX ((unsigned)(120*HZ)) |
|
#define | TCP_RTO_MIN ((unsigned)(HZ/5)) |
|
#define | TCP_TIMEOUT_INIT ((unsigned)(1*HZ)) /* RFC6298 2.1 initial RTO value */ |
|
#define | TCP_TIMEOUT_FALLBACK |
|
#define | TCP_RESOURCE_PROBE_INTERVAL |
|
#define | TCP_KEEPALIVE_TIME (120*60*HZ) /* two hours */ |
|
#define | TCP_KEEPALIVE_PROBES 9 /* Max of 9 keepalive probes */ |
|
#define | TCP_KEEPALIVE_INTVL (75*HZ) |
|
#define | MAX_TCP_KEEPIDLE 32767 |
|
#define | MAX_TCP_KEEPINTVL 32767 |
|
#define | MAX_TCP_KEEPCNT 127 |
|
#define | MAX_TCP_SYNCNT 127 |
|
#define | TCP_SYNQ_INTERVAL (HZ/5) /* Period of SYNACK timer */ |
|
#define | TCP_PAWS_24DAYS (60 * 60 * 24 * 24) |
|
#define | TCP_PAWS_MSL |
|
#define | TCP_PAWS_WINDOW |
|
#define | TCPOPT_NOP 1 /* Padding */ |
|
#define | TCPOPT_EOL 0 /* End of options */ |
|
#define | TCPOPT_MSS 2 /* Segment size negotiating */ |
|
#define | TCPOPT_WINDOW 3 /* Window scaling */ |
|
#define | TCPOPT_SACK_PERM 4 /* SACK Permitted */ |
|
#define | TCPOPT_SACK 5 /* SACK Block */ |
|
#define | TCPOPT_TIMESTAMP 8 /* Better RTT estimations/PAWS */ |
|
#define | TCPOPT_MD5SIG 19 /* MD5 Signature (RFC2385) */ |
|
#define | TCPOPT_COOKIE 253 /* Cookie extension (experimental) */ |
|
#define | TCPOPT_EXP 254 /* Experimental */ |
|
#define | TCPOPT_FASTOPEN_MAGIC 0xF989 |
|
#define | TCPOLEN_MSS 4 |
|
#define | TCPOLEN_WINDOW 3 |
|
#define | TCPOLEN_SACK_PERM 2 |
|
#define | TCPOLEN_TIMESTAMP 10 |
|
#define | TCPOLEN_MD5SIG 18 |
|
#define | TCPOLEN_EXP_FASTOPEN_BASE 4 |
|
#define | TCPOLEN_COOKIE_BASE 2 /* Cookie-less header extension */ |
|
#define | TCPOLEN_COOKIE_PAIR 3 /* Cookie pair header extension */ |
|
#define | TCPOLEN_COOKIE_MIN (TCPOLEN_COOKIE_BASE+TCP_COOKIE_MIN) |
|
#define | TCPOLEN_COOKIE_MAX (TCPOLEN_COOKIE_BASE+TCP_COOKIE_MAX) |
|
#define | TCPOLEN_TSTAMP_ALIGNED 12 |
|
#define | TCPOLEN_WSCALE_ALIGNED 4 |
|
#define | TCPOLEN_SACKPERM_ALIGNED 4 |
|
#define | TCPOLEN_SACK_BASE 2 |
|
#define | TCPOLEN_SACK_BASE_ALIGNED 4 |
|
#define | TCPOLEN_SACK_PERBLOCK 8 |
|
#define | TCPOLEN_MD5SIG_ALIGNED 20 |
|
#define | TCPOLEN_MSS_ALIGNED 4 |
|
#define | TCP_NAGLE_OFF 1 /* Nagle's algo is disabled */ |
|
#define | TCP_NAGLE_CORK 2 /* Socket is corked */ |
|
#define | TCP_NAGLE_PUSH 4 /* Cork is overridden for already queued data */ |
|
#define | TCP_THIN_LINEAR_RETRIES 6 /* After 6 linear retries, do exp. backoff */ |
|
#define | TCP_INIT_CWND 10 |
|
#define | TFO_CLIENT_ENABLE 1 |
|
#define | TFO_SERVER_ENABLE 2 |
|
#define | TFO_CLIENT_NO_COOKIE 4 /* Data in SYN w/o cookie option */ |
|
#define | TFO_SERVER_COOKIE_NOT_CHKED 0x100 |
|
#define | TFO_SERVER_COOKIE_NOT_REQD 0x200 |
|
#define | TFO_SERVER_WO_SOCKOPT1 0x400 |
|
#define | TFO_SERVER_WO_SOCKOPT2 0x800 |
|
#define | TFO_SERVER_ALWAYS 0x1000 |
|
#define | after(seq2, seq1) before(seq1, seq2) |
|
#define | TCP_INC_STATS(net, field) SNMP_INC_STATS((net)->mib.tcp_statistics, field) |
|
#define | TCP_INC_STATS_BH(net, field) SNMP_INC_STATS_BH((net)->mib.tcp_statistics, field) |
|
#define | TCP_DEC_STATS(net, field) SNMP_DEC_STATS((net)->mib.tcp_statistics, field) |
|
#define | TCP_ADD_STATS_USER(net, field, val) SNMP_ADD_STATS_USER((net)->mib.tcp_statistics, field, val) |
|
#define | TCP_ADD_STATS(net, field, val) SNMP_ADD_STATS((net)->mib.tcp_statistics, field, val) |
|
#define | TCP_ECN_OK 1 |
|
#define | TCP_ECN_QUEUE_CWR 2 |
|
#define | TCP_ECN_DEMAND_CWR 4 |
|
#define | TCP_ECN_SEEN 8 |
|
#define | tcp_time_stamp ((__u32)(jiffies)) |
|
#define | tcp_flag_byte(th) (((u_int8_t *)th)[13]) |
|
#define | TCPHDR_FIN 0x01 |
|
#define | TCPHDR_SYN 0x02 |
|
#define | TCPHDR_RST 0x04 |
|
#define | TCPHDR_PSH 0x08 |
|
#define | TCPHDR_ACK 0x10 |
|
#define | TCPHDR_URG 0x20 |
|
#define | TCPHDR_ECE 0x40 |
|
#define | TCPHDR_CWR 0x80 |
|
#define | TCPCB_SACKED_ACKED 0x01 /* SKB ACK'd by a SACK block */ |
|
#define | TCPCB_SACKED_RETRANS 0x02 /* SKB retransmitted */ |
|
#define | TCPCB_LOST 0x04 /* SKB is lost */ |
|
#define | TCPCB_TAGBITS 0x07 /* All tag bits */ |
|
#define | TCPCB_EVER_RETRANS 0x80 /* Ever retransmitted frame */ |
|
#define | TCPCB_RETRANS (TCPCB_SACKED_RETRANS|TCPCB_EVER_RETRANS) |
|
#define | TCP_SKB_CB(__skb) ((struct tcp_skb_cb *)&((__skb)->cb[0])) |
|
#define | TCP_CA_NAME_MAX 16 |
|
#define | TCP_CA_MAX 128 |
|
#define | TCP_CA_BUF_MAX (TCP_CA_NAME_MAX*TCP_CA_MAX) |
|
#define | TCP_CONG_NON_RESTRICTED 0x1 |
|
#define | TCP_CONG_RTT_STAMP 0x2 |
|
#define | TCP_INFINITE_SSTHRESH 0x7fffffff |
|
#define | tcp_verify_left_out(tp) WARN_ON(tcp_left_out(tp) > tp->packets_out) |
|
#define | tcp_twsk_md5_key(twsk) NULL |
|
#define | TCP_FASTOPEN_KEY_LENGTH 16 |
|
#define | tcp_for_write_queue(skb, sk) skb_queue_walk(&(sk)->sk_write_queue, skb) |
|
#define | tcp_for_write_queue_from(skb, sk) skb_queue_walk_from(&(sk)->sk_write_queue, skb) |
|
#define | tcp_for_write_queue_from_safe(skb, tmp, sk) skb_queue_walk_from_safe(&(sk)->sk_write_queue, skb, tmp) |
|
#define | COOKIE_DIGEST_WORDS (SHA_DIGEST_WORDS) |
|
#define | COOKIE_MESSAGE_WORDS (SHA_MESSAGE_BYTES / 4) |
|
#define | COOKIE_WORKSPACE_WORDS (COOKIE_DIGEST_WORDS + COOKIE_MESSAGE_WORDS) |
|
|
void | tcp_time_wait (struct sock *sk, int state, int timeo) |
|
bool | tcp_check_oom (struct sock *sk, int shift) |
|
void | tcp_init_mem (struct net *net) |
|
void | tcp_tasklet_init (void) |
|
void | tcp_v4_err (struct sk_buff *skb, u32) |
|
void | tcp_shutdown (struct sock *sk, int how) |
|
void | tcp_v4_early_demux (struct sk_buff *skb) |
|
int | tcp_v4_rcv (struct sk_buff *skb) |
|
struct inet_peer * | tcp_v4_get_peer (struct sock *sk) |
|
int | tcp_v4_tw_remember_stamp (struct inet_timewait_sock *tw) |
|
int | tcp_sendmsg (struct kiocb *iocb, struct sock *sk, struct msghdr *msg, size_t size) |
|
int | tcp_sendpage (struct sock *sk, struct page *page, int offset, size_t size, int flags) |
|
void | tcp_release_cb (struct sock *sk) |
|
void | tcp_write_timer_handler (struct sock *sk) |
|
void | tcp_delack_timer_handler (struct sock *sk) |
|
int | tcp_ioctl (struct sock *sk, int cmd, unsigned long arg) |
|
int | tcp_rcv_state_process (struct sock *sk, struct sk_buff *skb, const struct tcphdr *th, unsigned int len) |
|
int | tcp_rcv_established (struct sock *sk, struct sk_buff *skb, const struct tcphdr *th, unsigned int len) |
|
void | tcp_rcv_space_adjust (struct sock *sk) |
|
void | tcp_cleanup_rbuf (struct sock *sk, int copied) |
|
int | tcp_twsk_unique (struct sock *sk, struct sock *sktw, void *twp) |
|
void | tcp_twsk_destructor (struct sock *sk) |
|
ssize_t | tcp_splice_read (struct socket *sk, loff_t *ppos, struct pipe_inode_info *pipe, size_t len, unsigned int flags) |
|
enum tcp_tw_status | tcp_timewait_state_process (struct inet_timewait_sock *tw, struct sk_buff *skb, const struct tcphdr *th) |
|
struct sock * | tcp_check_req (struct sock *sk, struct sk_buff *skb, struct request_sock *req, struct request_sock **prev, bool fastopen) |
|
int | tcp_child_process (struct sock *parent, struct sock *child, struct sk_buff *skb) |
|
bool | tcp_use_frto (struct sock *sk) |
|
void | tcp_enter_frto (struct sock *sk) |
|
void | tcp_enter_loss (struct sock *sk, int how) |
|
void | tcp_clear_retrans (struct tcp_sock *tp) |
|
void | tcp_update_metrics (struct sock *sk) |
|
void | tcp_init_metrics (struct sock *sk) |
|
void | tcp_metrics_init (void) |
|
bool | tcp_peer_is_proven (struct request_sock *req, struct dst_entry *dst, bool paws_check) |
|
bool | tcp_remember_stamp (struct sock *sk) |
|
bool | tcp_tw_remember_stamp (struct inet_timewait_sock *tw) |
|
void | tcp_fetch_timewait_stamp (struct sock *sk, struct dst_entry *dst) |
|
void | tcp_disable_fack (struct tcp_sock *tp) |
|
void | tcp_close (struct sock *sk, long timeout) |
|
void | tcp_init_sock (struct sock *sk) |
|
unsigned int | tcp_poll (struct file *file, struct socket *sock, struct poll_table_struct *wait) |
|
int | tcp_getsockopt (struct sock *sk, int level, int optname, char __user *optval, int __user *optlen) |
|
int | tcp_setsockopt (struct sock *sk, int level, int optname, char __user *optval, unsigned int optlen) |
|
int | compat_tcp_getsockopt (struct sock *sk, int level, int optname, char __user *optval, int __user *optlen) |
|
int | compat_tcp_setsockopt (struct sock *sk, int level, int optname, char __user *optval, unsigned int optlen) |
|
void | tcp_set_keepalive (struct sock *sk, int val) |
|
void | tcp_syn_ack_timeout (struct sock *sk, struct request_sock *req) |
|
int | tcp_recvmsg (struct kiocb *iocb, struct sock *sk, struct msghdr *msg, size_t len, int nonblock, int flags, int *addr_len) |
|
void | tcp_parse_options (const struct sk_buff *skb, struct tcp_options_received *opt_rx, const u8 **hvpp, int estab, struct tcp_fastopen_cookie *foc) |
|
const u8 * | tcp_parse_md5sig_option (const struct tcphdr *th) |
|
void | tcp_v4_send_check (struct sock *sk, struct sk_buff *skb) |
|
int | tcp_v4_conn_request (struct sock *sk, struct sk_buff *skb) |
|
struct sock * | tcp_create_openreq_child (struct sock *sk, struct request_sock *req, struct sk_buff *skb) |
|
struct sock * | tcp_v4_syn_recv_sock (struct sock *sk, struct sk_buff *skb, struct request_sock *req, struct dst_entry *dst) |
|
int | tcp_v4_do_rcv (struct sock *sk, struct sk_buff *skb) |
|
int | tcp_v4_connect (struct sock *sk, struct sockaddr *uaddr, int addr_len) |
|
int | tcp_connect (struct sock *sk) |
|
struct sk_buff * | tcp_make_synack (struct sock *sk, struct dst_entry *dst, struct request_sock *req, struct request_values *rvp, struct tcp_fastopen_cookie *foc) |
|
int | tcp_disconnect (struct sock *sk, int flags) |
|
void | tcp_connect_init (struct sock *sk) |
|
void | tcp_finish_connect (struct sock *sk, struct sk_buff *skb) |
|
int | tcp_send_rcvq (struct sock *sk, struct msghdr *msg, size_t size) |
|
void | inet_sk_rx_dst_set (struct sock *sk, const struct sk_buff *skb) |
|
struct sock * | cookie_v4_check (struct sock *sk, struct sk_buff *skb, struct ip_options *opt) |
|
__u32 | cookie_init_timestamp (struct request_sock *req) |
|
bool | cookie_check_timestamp (struct tcp_options_received *opt, bool *) |
|
struct sock * | cookie_v6_check (struct sock *sk, struct sk_buff *skb) |
|
void | __tcp_push_pending_frames (struct sock *sk, unsigned int cur_mss, int nonagle) |
|
bool | tcp_may_send_now (struct sock *sk) |
|
int | __tcp_retransmit_skb (struct sock *, struct sk_buff *) |
|
int | tcp_retransmit_skb (struct sock *, struct sk_buff *) |
|
void | tcp_retransmit_timer (struct sock *sk) |
|
void | tcp_xmit_retransmit_queue (struct sock *) |
|
void | tcp_simple_retransmit (struct sock *) |
|
int | tcp_trim_head (struct sock *, struct sk_buff *, u32) |
|
int | tcp_fragment (struct sock *, struct sk_buff *, u32, unsigned int) |
|
void | tcp_send_probe0 (struct sock *) |
|
void | tcp_send_partial (struct sock *) |
|
int | tcp_write_wakeup (struct sock *) |
|
void | tcp_send_fin (struct sock *sk) |
|
void | tcp_send_active_reset (struct sock *sk, gfp_t priority) |
|
int | tcp_send_synack (struct sock *) |
|
bool | tcp_syn_flood_action (struct sock *sk, const struct sk_buff *skb, const char *proto) |
|
void | tcp_push_one (struct sock *, unsigned int mss_now) |
|
void | tcp_send_ack (struct sock *sk) |
|
void | tcp_send_delayed_ack (struct sock *sk) |
|
void | tcp_cwnd_application_limited (struct sock *sk) |
|
void | tcp_resume_early_retransmit (struct sock *sk) |
|
void | tcp_rearm_rto (struct sock *sk) |
|
void | tcp_reset (struct sock *sk) |
|
void | tcp_init_xmit_timers (struct sock *) |
|
unsigned int | tcp_sync_mss (struct sock *sk, u32 pmtu) |
|
unsigned int | tcp_current_mss (struct sock *sk) |
|
void | tcp_get_info (const struct sock *, struct tcp_info *) |
|
int | tcp_read_sock (struct sock *sk, read_descriptor_t *desc, sk_read_actor_t recv_actor) |
|
void | tcp_initialize_rcv_mss (struct sock *sk) |
|
int | tcp_mtu_to_mss (struct sock *sk, int pmtu) |
|
int | tcp_mss_to_mtu (struct sock *sk, int mss) |
|
void | tcp_mtup_init (struct sock *sk) |
|
void | tcp_valid_rtt_meas (struct sock *sk, u32 seq_rtt) |
|
void | tcp_init_buffer_space (struct sock *sk) |
|
void | tcp_set_rto (struct sock *sk) |
|
u32 | __tcp_select_window (struct sock *sk) |
|
void | tcp_send_window_probe (struct sock *sk) |
|
int | tcp_register_congestion_control (struct tcp_congestion_ops *type) |
|
void | tcp_unregister_congestion_control (struct tcp_congestion_ops *type) |
|
void | tcp_init_congestion_control (struct sock *sk) |
|
void | tcp_cleanup_congestion_control (struct sock *sk) |
|
int | tcp_set_default_congestion_control (const char *name) |
|
void | tcp_get_default_congestion_control (char *name) |
|
void | tcp_get_available_congestion_control (char *buf, size_t len) |
|
void | tcp_get_allowed_congestion_control (char *buf, size_t len) |
|
int | tcp_set_allowed_congestion_control (char *allowed) |
|
int | tcp_set_congestion_control (struct sock *sk, const char *name) |
|
void | tcp_slow_start (struct tcp_sock *tp) |
|
void | tcp_cong_avoid_ai (struct tcp_sock *tp, u32 w) |
|
u32 | tcp_reno_ssthresh (struct sock *sk) |
|
void | tcp_reno_cong_avoid (struct sock *sk, u32 ack, u32 in_flight) |
|
u32 | tcp_reno_min_cwnd (const struct sock *sk) |
|
void | tcp_enter_cwr (struct sock *sk, const int set_ssthresh) |
|
__u32 | tcp_init_cwnd (const struct tcp_sock *tp, const struct dst_entry *dst) |
|
bool | tcp_is_cwnd_limited (const struct sock *sk, u32 in_flight) |
|
void | tcp_set_state (struct sock *sk, int state) |
|
void | tcp_done (struct sock *sk) |
|
void | tcp_select_initial_window (int __space, __u32 mss, __u32 *rcv_wnd, __u32 *window_clamp, int wscale_ok, __u8 *rcv_wscale, __u32 init_rcv_wnd) |
|
void | tcp_enter_memory_pressure (struct sock *sk) |
|
int | tcp_v4_md5_hash_skb (char *md5_hash, struct tcp_md5sig_key *key, const struct sock *sk, const struct request_sock *req, const struct sk_buff *skb) |
|
int | tcp_md5_do_add (struct sock *sk, const union tcp_md5_addr *addr, int family, const u8 *newkey, u8 newkeylen, gfp_t gfp) |
|
int | tcp_md5_do_del (struct sock *sk, const union tcp_md5_addr *addr, int family) |
|
struct tcp_md5sig_key * | tcp_v4_md5_lookup (struct sock *sk, struct sock *addr_sk) |
|
struct tcp_md5sig_pool __percpu * | tcp_alloc_md5sig_pool (struct sock *) |
|
void | tcp_free_md5sig_pool (void) |
|
struct tcp_md5sig_pool * | tcp_get_md5sig_pool (void) |
|
void | tcp_put_md5sig_pool (void) |
|
int | tcp_md5_hash_header (struct tcp_md5sig_pool *, const struct tcphdr *) |
|
int | tcp_md5_hash_skb_data (struct tcp_md5sig_pool *, const struct sk_buff *, unsigned int header_len) |
|
int | tcp_md5_hash_key (struct tcp_md5sig_pool *hp, const struct tcp_md5sig_key *key) |
|
void | tcp_fastopen_cache_get (struct sock *sk, u16 *mss, struct tcp_fastopen_cookie *cookie, int *syn_loss, unsigned long *last_syn_loss) |
|
void | tcp_fastopen_cache_set (struct sock *sk, u16 mss, struct tcp_fastopen_cookie *cookie, bool syn_lost) |
|
void | tcp_free_fastopen_req (struct tcp_sock *tp) |
|
int | tcp_fastopen_reset_cipher (void *key, unsigned int len) |
|
void | tcp_fastopen_cookie_gen (__be32 addr, struct tcp_fastopen_cookie *foc) |
|
int | tcp_seq_open (struct inode *inode, struct file *file) |
|
int | tcp_proc_register (struct net *net, struct tcp_seq_afinfo *afinfo) |
|
void | tcp_proc_unregister (struct net *net, struct tcp_seq_afinfo *afinfo) |
|
void | tcp_v4_destroy_sock (struct sock *sk) |
|
int | tcp_v4_gso_send_check (struct sk_buff *skb) |
|
struct sk_buff * | tcp_tso_segment (struct sk_buff *skb, netdev_features_t features) |
|
struct sk_buff ** | tcp_gro_receive (struct sk_buff **head, struct sk_buff *skb) |
|
struct sk_buff ** | tcp4_gro_receive (struct sk_buff **head, struct sk_buff *skb) |
|
int | tcp_gro_complete (struct sk_buff *skb) |
|
int | tcp4_gro_complete (struct sk_buff *skb) |
|
int | tcp_cookie_generator (u32 *bakery) |
|
void | tcp_v4_init (void) |
|
void | tcp_init (void) |
|