Changeset View
Changeset View
Standalone View
Standalone View
head/sys/netinet/tcp_input.c
Show First 20 Lines • Show All 532 Lines • ▼ Show 20 Lines | case IPTOS_ECN_NOTECT: | ||||
break; | break; | ||||
} | } | ||||
if (th->th_flags & TH_CWR) | if (th->th_flags & TH_CWR) | ||||
tp->ccv->flags |= CCF_TCPHDR_CWR; | tp->ccv->flags |= CCF_TCPHDR_CWR; | ||||
else | else | ||||
tp->ccv->flags &= ~CCF_TCPHDR_CWR; | tp->ccv->flags &= ~CCF_TCPHDR_CWR; | ||||
if (tp->t_flags & TF_DELACK) | |||||
tp->ccv->flags |= CCF_DELACK; | |||||
else | |||||
tp->ccv->flags &= ~CCF_DELACK; | |||||
CC_ALGO(tp)->ecnpkt_handler(tp->ccv); | CC_ALGO(tp)->ecnpkt_handler(tp->ccv); | ||||
if (tp->ccv->flags & CCF_ACKNOW) | if (tp->ccv->flags & CCF_ACKNOW) { | ||||
tcp_timer_activate(tp, TT_DELACK, tcp_delacktime); | tcp_timer_activate(tp, TT_DELACK, tcp_delacktime); | ||||
tp->t_flags |= TF_ACKNOW; | |||||
} | |||||
} | } | ||||
} | } | ||||
/* | /* | ||||
* TCP input handling is split into multiple parts: | * TCP input handling is split into multiple parts: | ||||
* tcp6_input is a thin wrapper around tcp_input for the extended | * tcp6_input is a thin wrapper around tcp_input for the extended | ||||
* ip6_protox[] call format in ip6_input | * ip6_protox[] call format in ip6_input | ||||
* tcp_input handles primary segment validation, inpcb lookup and | * tcp_input handles primary segment validation, inpcb lookup and | ||||
▲ Show 20 Lines • Show All 3,281 Lines • Show Last 20 Lines |