connection_ap_expire_beginning(): Bug: circuit->purpose == CIRCUIT_PURPOSE_C_GENERAL failed
On my onion service, I now get:
Jan 19 18:24:30.165 [warn] connection_ap_expire_beginning(): Bug: circuit->purpose == CIRCUIT_PURPOSE_C_GENERAL failed. The purpose on the circuit was Hidden service: Uploading HS descriptor; it was in state open, path_state new. (on Tor 0.3.3.0-alpha-dev ef148638a1d3b312)
It looks like the clause in question is
}
if (circ->purpose != CIRCUIT_PURPOSE_C_GENERAL &&
circ->purpose != CIRCUIT_PURPOSE_C_MEASURE_TIMEOUT &&
circ->purpose != CIRCUIT_PURPOSE_PATH_BIAS_TESTING) {
log_warn(LD_BUG, "circuit->purpose == CIRCUIT_PURPOSE_C_GENERAL failed. "
"The purpose on the circuit was %s; it was in state %s, "
"path_state %s.",
circuit_purpose_to_string(circ->purpose),
circuit_state_to_string(circ->state),
CIRCUIT_IS_ORIGIN(circ) ?
pathbias_state_to_string(TO_ORIGIN_CIRCUIT(circ)->path_state) :
"none");
}
and I'm suspecting that legacy/trac#23101 (moved) wanted to add a line here.