diff --git a/sys/netinet/tcp_log_buf.h b/sys/netinet/tcp_log_buf.h --- a/sys/netinet/tcp_log_buf.h +++ b/sys/netinet/tcp_log_buf.h @@ -421,7 +421,7 @@ tcp_set_bblog_state(struct tcpcb *tp, uint8_t ls, uint8_t bbpoint) { if ((ls == TCP_LOG_VIA_BBPOINTS) && - (tp->_t_logstate <= TCP_LOG_STATE_OFF)){ + (tp->_t_logstate == TCP_LOG_STATE_OFF)){ /* * We don't allow a BBPOINTS set to override * other types of BB logging set by other means such @@ -431,11 +431,9 @@ */ tp->_t_logpoint = bbpoint; tp->_t_logstate = ls; - } else if (ls != TCP_LOG_VIA_BBPOINTS) { - tp->_t_logpoint = 0; - if ((ls >= TCP_LOG_STATE_OFF) && - (ls < TCP_LOG_VIA_BBPOINTS)) - tp->_t_logstate = ls; + } else if (ls < TCP_LOG_VIA_BBPOINTS) { + tp->_t_logpoint = TCP_BBPOINT_NONE; + tp->_t_logstate = ls; } }