Release synthetic path queues in the session-timeout fixture

This commit is contained in:
evgeny committed 2026-10-23 10:42:43 +02:00
1 parent 4c9a32d865
commit 3ca9926c48
1 file changed
+5 -1
+5 -1
View File
@@ -388,13 +388,17 @@ int main(void) {
blackhole=1;
uint64_t started = ep[0].c->session_started;
CHECK(etcp_conn_ref_take(ep[0].c)==0);
for (int i = 0; i < 2; i++) for (int j = 0; j < 2; j++)
if (ep[i].links[j].attempts) etcp_tx_link_destroy(&ep[i].links[j]);
ep[0].c->links=NULL; // timeout closes a real connection, links belong to fixture
while (ep[0].c->state!=2 && get_time_tb() < started + 110000) pump();
CHECK(ep[0].c->state == 2 && get_time_tb() - started >= 100000);
CHECK(!ep[0].c->session_timer && ep[0].c->delete_complete);
etcp_conn_ref_free(ep[0].c); ep[0].c=NULL;
ep[1].c->links=NULL; etcp_connection_close(ep[1].c); uasync_poll(ua,0);
for (int i=0;i<2;i++) { queue_free(ep[i].inst.connections); memory_pool_destroy(ep[i].inst.pkt_pool); }
for (int i=0;i<2;i++) {
queue_free(ep[i].inst.connections); memory_pool_destroy(ep[i].inst.pkt_pool); memory_pool_destroy(ep[i].inst.ack_pool);
}
uasync_poll(ua,0); CHECK(ua->timer_alloc_count==ua->timer_free_count); uasync_destroy(ua,0);
} else {
converge();