tcp_minisocks.c (ca2eb5679f8ddffff60156af42595df44a315ef0) | tcp_minisocks.c (ceaa1fef65a7c2e017b260b879b310dd24888083) |
---|---|
1/* 2 * INET An implementation of the TCP/IP protocol suite for the LINUX 3 * operating system. INET is implemented using the BSD Socket 4 * interface as the means of communication with the user level. 5 * 6 * Implementation of the Transmission Control Protocol(TCP). 7 * 8 * Authors: Ross Biro --- 274 unchanged lines hidden (view full) --- 283 284 tw->tw_transparent = inet->transparent; 285 tw->tw_rcv_wscale = tp->rx_opt.rcv_wscale; 286 tcptw->tw_rcv_nxt = tp->rcv_nxt; 287 tcptw->tw_snd_nxt = tp->snd_nxt; 288 tcptw->tw_rcv_wnd = tcp_receive_window(tp); 289 tcptw->tw_ts_recent = tp->rx_opt.ts_recent; 290 tcptw->tw_ts_recent_stamp = tp->rx_opt.ts_recent_stamp; | 1/* 2 * INET An implementation of the TCP/IP protocol suite for the LINUX 3 * operating system. INET is implemented using the BSD Socket 4 * interface as the means of communication with the user level. 5 * 6 * Implementation of the Transmission Control Protocol(TCP). 7 * 8 * Authors: Ross Biro --- 274 unchanged lines hidden (view full) --- 283 284 tw->tw_transparent = inet->transparent; 285 tw->tw_rcv_wscale = tp->rx_opt.rcv_wscale; 286 tcptw->tw_rcv_nxt = tp->rcv_nxt; 287 tcptw->tw_snd_nxt = tp->snd_nxt; 288 tcptw->tw_rcv_wnd = tcp_receive_window(tp); 289 tcptw->tw_ts_recent = tp->rx_opt.ts_recent; 290 tcptw->tw_ts_recent_stamp = tp->rx_opt.ts_recent_stamp; |
291 tcptw->tw_ts_offset = tp->tsoffset; |
|
291 292#if IS_ENABLED(CONFIG_IPV6) 293 if (tw->tw_family == PF_INET6) { 294 struct ipv6_pinfo *np = inet6_sk(sk); 295 struct inet6_timewait_sock *tw6; 296 297 tw->tw_ipv6_offset = inet6_tw_offset(sk->sk_prot); 298 tw6 = inet6_twsk((struct sock *)tw); --- 195 unchanged lines hidden (view full) --- 494 if (newtp->rx_opt.tstamp_ok) { 495 newtp->rx_opt.ts_recent = req->ts_recent; 496 newtp->rx_opt.ts_recent_stamp = get_seconds(); 497 newtp->tcp_header_len = sizeof(struct tcphdr) + TCPOLEN_TSTAMP_ALIGNED; 498 } else { 499 newtp->rx_opt.ts_recent_stamp = 0; 500 newtp->tcp_header_len = sizeof(struct tcphdr); 501 } | 292 293#if IS_ENABLED(CONFIG_IPV6) 294 if (tw->tw_family == PF_INET6) { 295 struct ipv6_pinfo *np = inet6_sk(sk); 296 struct inet6_timewait_sock *tw6; 297 298 tw->tw_ipv6_offset = inet6_tw_offset(sk->sk_prot); 299 tw6 = inet6_twsk((struct sock *)tw); --- 195 unchanged lines hidden (view full) --- 495 if (newtp->rx_opt.tstamp_ok) { 496 newtp->rx_opt.ts_recent = req->ts_recent; 497 newtp->rx_opt.ts_recent_stamp = get_seconds(); 498 newtp->tcp_header_len = sizeof(struct tcphdr) + TCPOLEN_TSTAMP_ALIGNED; 499 } else { 500 newtp->rx_opt.ts_recent_stamp = 0; 501 newtp->tcp_header_len = sizeof(struct tcphdr); 502 } |
503 newtp->tsoffset = 0; |
|
502#ifdef CONFIG_TCP_MD5SIG 503 newtp->md5sig_info = NULL; /*XXX*/ 504 if (newtp->af_specific->md5_lookup(sk, newsk)) 505 newtp->tcp_header_len += TCPOLEN_MD5SIG_ALIGNED; 506#endif 507 if (skb->len >= TCP_MSS_DEFAULT + newtp->tcp_header_len) 508 newicsk->icsk_ack.last_seg_size = skb->len - newtp->tcp_header_len; 509 newtp->rx_opt.mss_clamp = req->mss; --- 284 unchanged lines hidden --- | 504#ifdef CONFIG_TCP_MD5SIG 505 newtp->md5sig_info = NULL; /*XXX*/ 506 if (newtp->af_specific->md5_lookup(sk, newsk)) 507 newtp->tcp_header_len += TCPOLEN_MD5SIG_ALIGNED; 508#endif 509 if (skb->len >= TCP_MSS_DEFAULT + newtp->tcp_header_len) 510 newicsk->icsk_ack.last_seg_size = skb->len - newtp->tcp_header_len; 511 newtp->rx_opt.mss_clamp = req->mss; --- 284 unchanged lines hidden --- |