Changeset View
Changeset View
Standalone View
Standalone View
head/sys/netinet/tcp_input.c
Show First 20 Lines • Show All 1,139 Lines • ▼ Show 20 Lines | tfo_socket_result: | ||||
tp = intotcpcb(inp); | tp = intotcpcb(inp); | ||||
KASSERT(tp->t_state == TCPS_SYN_RECEIVED, | KASSERT(tp->t_state == TCPS_SYN_RECEIVED, | ||||
("%s: ", __func__)); | ("%s: ", __func__)); | ||||
/* | /* | ||||
* Process the segment and the data it | * Process the segment and the data it | ||||
* contains. tcp_do_segment() consumes | * contains. tcp_do_segment() consumes | ||||
* the mbuf chain and unlocks the inpcb. | * the mbuf chain and unlocks the inpcb. | ||||
*/ | */ | ||||
TCP_PROBE5(receive, NULL, tp, m, tp, th); | |||||
tp->t_fb->tfb_tcp_do_segment(m, th, so, tp, drop_hdrlen, tlen, | tp->t_fb->tfb_tcp_do_segment(m, th, so, tp, drop_hdrlen, tlen, | ||||
iptos); | iptos); | ||||
if (ti_locked == TI_RLOCKED) | if (ti_locked == TI_RLOCKED) | ||||
INP_INFO_RUNLOCK_ET(&V_tcbinfo, et); | INP_INFO_RUNLOCK_ET(&V_tcbinfo, et); | ||||
return (IPPROTO_DONE); | return (IPPROTO_DONE); | ||||
} | } | ||||
/* | /* | ||||
* Segment flag validation for new connection attempts: | * Segment flag validation for new connection attempts: | ||||
▲ Show 20 Lines • Show All 2,662 Lines • Show Last 20 Lines |