GET_TCB_FIELD
if (GET_TCB_FIELD(tcb, SND_MAX_RAW) != GET_TCB_FIELD(tcb, SND_UNA_RAW)) {
if (GET_TCB_FIELD(tcb, T_RXTSHIFT) != 0)
if (GET_TCB_FIELD(tcb, T_DUPACKS) != 0)
if (GET_TCB_FIELD(tcb, T_DUPACKS) >= td->dupack_threshold)
if (GET_TCB_FIELD(tcb, SND_MAX_RAW) != 0) {
snd_wnd = GET_TCB_FIELD(tcb, RCV_ADV);
snd_wnd <<= GET_TCB_FIELD(tcb, RCV_SCALE);
if (GET_TCB_FIELD(tcb, SND_CWND) < snd_wnd)
remove = GET_TCB_FIELD(tcb, T_STATE) == TCPS_CLOSED;
(uintmax_t)get_tcb_tflags(tcb), GET_TCB_FIELD(tcb, T_STATE),
GET_TCB_FIELD(tcb, T_SRTT), GET_TCB_FIELD(tcb, SND_SCALE),
GET_TCB_FIELD(tcb, RCV_SCALE), cpl->cookie);
ti->tcpi_state = GET_TCB_FIELD(tcb, T_STATE);
v = GET_TCB_FIELD(tcb, T_SRTT);
v = GET_TCB_FIELD(tcb, T_RTTVAR);
ti->tcpi_snd_ssthresh = GET_TCB_FIELD(tcb, SND_SSTHRESH);
ti->tcpi_snd_cwnd = GET_TCB_FIELD(tcb, SND_CWND);
ti->tcpi_rcv_nxt = GET_TCB_FIELD(tcb, RCV_NXT);
ti->tcpi_rcv_adv = GET_TCB_FIELD(tcb, RCV_ADV);
ti->tcpi_dupacks = GET_TCB_FIELD(tcb, T_DUPACKS);
v = GET_TCB_FIELD(tcb, TX_MAX);
ti->tcpi_snd_nxt = v - GET_TCB_FIELD(tcb, SND_NXT_RAW);
ti->tcpi_snd_una = v - GET_TCB_FIELD(tcb, SND_UNA_RAW);
ti->tcpi_snd_max = v - GET_TCB_FIELD(tcb, SND_MAX_RAW);
ti->tcpi_rcv_wscale = GET_TCB_FIELD(tcb, SND_SCALE); /* Yes, SND. */
ti->tcpi_rcv_space = GET_TCB_FIELD(tcb, RCV_WND);
ti->tcpi_snd_wscale = GET_TCB_FIELD(tcb, RCV_SCALE); /* Yes, RCV. */
ti->tcpi_snd_wnd = GET_TCB_FIELD(tcb, RCV_ADV);