test: 5 new router unit tests — RST, restart, sess_id
test_rst_flag: inject ROUTER_FLAG_RST → rconn destroyed, service notified test_client_restart: pump random data → inject START → restart detected test_sess_id_change: pump sess_id=0 → inject sess_id=1+START → detected test_sess_id_wrap: pump sess_id=3, peer_sess_id=3 → inject sess_id=0+START → wrap detected test_server_reinit: reinit router → new rconn start_sent=0, sess_id=0 inject() extended with uint8_t flags parameter. pump_data helper for random data injection. test_handler tracks g_notify_count for close/restart notifications. fix: etcp_router_recv_cb — return after RST flag to avoid NULL rconn deref
This commit is contained in:
1 parent
d0029178e7
commit
0449a5fd9d
2 files changed
+172
-26
No files matched your search
+2
-1
@@ -396,7 +396,8 @@ static void etcp_router_recv_cb(struct ETCP_CONN* conn, struct ll_entry* entry)
|
||||
"router: RST from %016llx svc_id=%u",
|
||||
(unsigned long long)hdr->src_node_id, hdr->svc_id);
|
||||
router_close_and_notify(rconn);
|
||||
rconn = NULL;
|
||||
queue_dgram_free(entry); queue_entry_free(entry);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user