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 ---