When forwarding over DoT, an upstream that accepts a TCP connection
and immediately closes it triggers this assetion, because
the forwarder wasn't able to solve any waiting tasks.
bool is_close_event = (event == PROTOLAYER_EVENT_CLOSE ||
event == PROTOLAYER_EVENT_FORCE_CLOSE);
if (is_close_event) {
- if (kr_fails_assert(session2_is_empty(s))) {
- session2_waitinglist_finalize(s, KR_STATE_FAIL);
- session2_tasklist_finalize(s, KR_STATE_FAIL);
- }
+ session2_waitinglist_finalize(s, KR_STATE_FAIL);
+ session2_tasklist_finalize(s, KR_STATE_FAIL);
session2_timer_stop(s);
s->closing = true;
}