nat: retry partial ingress measurements and keep known-IP anchor replies available

This commit is contained in:
evgeny committed 2026-10-17 16:02:01 +02:00
1 parent 8158d6a435
commit 38447da5e8
2 files changed
+7 -1

No files matched your search

+4 -1
View File
@@ -391,7 +391,10 @@ static void test_fallback(void) {
assert(socket->address_profile.source == ADDRESS_SOURCE_NONE && !socket->address_profile.mapping && !socket->address_profile.inbound);
assert(!memcmp(&socket->address_profile, &duplicate->address_profile, sizeof(socket->address_profile)));
assert(!socket->nat_addr.ss_family && !duplicate->nat_addr.ss_family);
struct nat_check_status status; assert(!nat_detection_get_status(owner->nat_det, socket, &status));
struct nat_check_status status;
end = get_time_tb() + 30000;
do { test_clock_poll(nf.ua, 1000); assert(!nat_detection_get_status(owner->nat_det, socket, &status)); }
while (get_time_tb() < end && status.reason != NAT_REASON_NO_OBSERVER);
assert(status.reason == NAT_REASON_NO_OBSERVER);
struct TOPO_NODE* snapshot = topo_node_registry_find(owner->topo_groups, owner->node_id);
assert(snapshot && !topo_node_verify(snapshot));