diff --git a/sys/netinet/tcp_output.c b/sys/netinet/tcp_output.c --- a/sys/netinet/tcp_output.c +++ b/sys/netinet/tcp_output.c @@ -222,6 +222,7 @@ int tso, mtu; struct tcpopt to; struct udphdr *udp = NULL; + struct tcp_log_buffer *lgb; unsigned int wanted_cookie = 0; unsigned int dont_sendalot = 0; #if 0 @@ -1441,8 +1442,13 @@ TCP_PROBE3(debug__output, tp, th, m); /* We're getting ready to send; log now. */ - TCP_LOG_EVENT(tp, th, &so->so_rcv, &so->so_snd, TCP_LOG_OUT, ERRNO_UNK, - len, NULL, false); + /* XXXMT: We are not honoring verbose logging. */ + if (tp->t_logstate != TCP_LOG_STATE_OFF) + lgb = tcp_log_event_(tp, th, &so->so_rcv, &so->so_snd, + TCP_LOG_OUT, ERRNO_UNK, len, NULL, false, NULL, NULL, 0, + NULL); + else + lgb = NULL; /* * Fill in IP length and desired time to live and @@ -1542,6 +1548,10 @@ } #endif /* INET */ + if (lgb != NULL) { + lgb->tlb_errno = error; + lgb = NULL; + } out: if (error == 0) tcp_account_for_send(tp, len, (tp->snd_nxt != tp->snd_max), 0, hw_tls); @@ -1655,10 +1665,6 @@ tcp_clean_dsack_blocks(tp); } if (error) { - /* Record the error. */ - TCP_LOG_EVENT(tp, NULL, &so->so_rcv, &so->so_snd, TCP_LOG_OUT, - error, 0, NULL, false); - /* * We know that the packet was lost, so back out the * sequence number advance, if any.