Commit Graph
1650 Commits
Author SHA1 Message Date
evgeny 952fbe68e2 Schedule bounded endpoint rechecks after compatible UDP failure 2026-10-12 20:25:20 +02:00
evgeny 99382cf823 Cancel UDP route probes with their contexts before socket teardown 2026-10-12 20:21:02 +02:00
evgeny 2354e94347 Expose pending NAT candidate cycles in local diagnostic status 2026-10-12 20:17:44 +02:00
evgeny 2ba011d3fd Document grouped control, isolated helper ports and ingress correlation 2026-10-12 20:07:49 +02:00
evgeny 179aa0ef35 Release received packets when cold NAT priority defers PONG 2026-10-12 20:05:47 +02:00
evgeny 3635bcf3a9 Keep connection-manager background pings out of cold NAT trials 2026-10-12 19:44:28 +02:00
evgeny 9a24ac6bdf Try controlled ingress before asking the broker for helper mapping 2026-10-12 19:27:58 +02:00
evgeny f71e94c9d8 Trace the first UDP contacts that affect cold NAT classification 2026-10-12 19:17:06 +02:00
evgeny 8906e29102 Keep background PONG replies from contaminating cold ingress checks 2026-10-12 19:01:13 +02:00
evgeny 9bd113054c Defer reachability probes while the first NAT ingress is protected 2026-10-12 18:50:08 +02:00
evgeny 9324b8af8c Give initial NAT measurements bounded priority without opening filters 2026-10-12 18:50:08 +02:00
evgeny 585834ffbe Isolate helper traffic from the measured working sockets 2026-10-12 18:47:54 +02:00
evgeny 96fa1990b0 Keep detection attempt counters and network fixtures group-aware 2026-10-12 18:20:47 +02:00
evgeny 0ee431b490 Prefer untouched helper IPs and exercise NAT through real groups 2026-10-12 18:13:29 +02:00
evgeny 8990574c1d Complete grouped NAT control and cancel tasks with group lifetime 2026-10-12 18:08:47 +02:00
evgeny a0a4493ef2 Measure helper endpoints and protect controlled UDP ingress trials 2026-10-12 17:57:22 +02:00
evgeny 77ca1ec3dd Select NAT candidates across groups and route authenticated control 2026-10-12 17:50:45 +02:00
evgeny 2e7da4f3cc Define grouped NAT probe tags and a routed control service 2026-10-12 17:43:27 +02:00
evgeny 53c32e5669 Document compact NAT profiles and stable measurement lifetime 2026-10-12 17:13:22 +02:00
evgeny 5429431567 Invalidate changed endpoints and verify the Android address contract 2026-10-12 17:11:56 +02:00
evgeny 61132a3e84 Align socket monitoring with compact address profiles 2026-10-12 17:05:23 +02:00
evgeny db8a5ee2df Retain stable NAT results and compact the address database 2026-10-12 17:04:59 +02:00
evgeny e47ae480f5 Remove time-dependent profile matching from connection setup 2026-10-12 17:01:28 +02:00
evgeny f900cda9c0 Use the last published address profile without a time limit 2026-10-12 17:01:02 +02:00
evgeny 38eaae8bb6 Remove measurement IDs and timestamps from NODEINFO profiles 2026-10-12 17:00:38 +02:00
evgeny a96d5926c7 Fix Android external network monitoring and startup readiness
Select frontend network callbacks for auto_sockets=android instead of opening a denied netlink monitor. Preserve monitor descriptor ownership, keep native monitoring failures fatal, and release caller config on failed Android core creation and restart.

Register ConnectivityManager before requesting startup, report readiness after SERVICE_STARTED, and refresh addresses after initialization with serialized updates and generation checks. Add regression coverage for denied netlink, socket failures, address updates, and fd=0 preservation. Record the separate cancellation issue for startup before readiness.

Validation: full check.sh passed, including proxy/burst/load integrations. Clean Android build installed successfully on SM-A525F and Q8; logcat confirms both cores initialized and entered the poll loop with external monitoring and post-start address refresh.
2026-10-12 16:01:26 +02:00
evgeny 72e2c89e3b Fix sockless TCP keepalive and require complete UTUN initialization
Receive keepalive through the owning ETCP link, preserve RX deadlines, and report routing metrics without TUN. Use independent netlink requests and track installed routes for rollback. Reject incomplete resource initialization and release partially constructed cores while preserving caller config ownership.

Validated startup failure and rollback, padded keepalive, standby, STCP traffic, transport lifecycle, dynamic sockets, and daemon startup. Real TUN/netlink checks passed in an isolated Linux network namespace; modified modules passed FreeBSD compilation checks.
2026-10-12 14:24:32 +02:00
evgeny 150b3c3bdb Explain invalid media metadata and codec transitions in logs 2026-10-12 11:26:27 +02:00
evgeny 5c23c10c04 Register audiovisual stream sources and regression target 2026-10-12 01:46:06 +02:00
evgeny 1389bac261 Define FEC protected audiovisual blocks and frame assembly 2026-10-12 01:45:08 +02:00
evgeny 47caca82a1 Expose atomic publication of stream batches 2026-10-12 01:43:31 +02:00
evgeny baeaef3ab1 Preserve logical block boundaries in stream sources 2026-10-12 01:43:21 +02:00
evgeny fdaa20977d Recheck expired down lifetime when the last NCD owner releases it 2026-10-12 01:34:44 +02:00
evgeny 11f1a14063 Retain down ETCP connections while local NCD handles exist 2026-10-12 01:34:44 +02:00
evgeny 0d7f7630b0 Expose actual NCD handle ownership for an ETCP transport 2026-10-12 01:34:44 +02:00
evgeny 6704a18897 Clarify independent RX watchdog and sleep-aware graceful close deadlines 2026-10-12 01:34:44 +02:00
evgeny 24c64967fd Propagate remote UDP link DOWN to the connection expiry timer 2026-10-12 01:34:44 +02:00
evgeny 85b4af5b1d Shorten RX deadline immediately when a sleeping peer wakes 2026-10-12 01:34:44 +02:00
evgeny 2e66cdb122 Preserve cancellation of pending outgoing attempts and size packet fixture correctly 2026-10-12 01:34:44 +02:00
evgeny b57221f6b5 Document ETCP down retention and separate RX lifetime from keepalive sending 2026-10-12 01:34:44 +02:00
evgeny 0ba8380db4 Test incoming ETCP expiry, reconnect, sleep and graceful close 2026-10-12 01:34:44 +02:00
evgeny f090d697c4 Initialize inbound graceful close and honor remote transport ownership 2026-10-12 01:34:44 +02:00
evgeny 3cfdb9e6ec Keep a finite RX deadline while ETCP keepalive sending is suspended 2026-10-12 01:34:44 +02:00
evgeny 034be69ac1 Expire ETCP transports after 30 seconds continuously down 2026-10-12 01:34:44 +02:00
evgeny 9f907d0f31 Stop NAT detectors before service callbacks and verify STUN restart isolation 2026-10-12 01:25:59 +02:00
evgeny 152ebfef48 Release retained STUN port history during final core destruction 2026-10-12 01:24:00 +02:00
evgeny 3d5f009380 Keep STUN port history owned by the core across configuration reloads 2026-10-12 01:24:00 +02:00
evgeny 3735b78328 Verify STUN cache expiry and preserve partial ETCP measurement priority 2026-10-12 01:20:56 +02:00
evgeny f433413c49 Test deduplicated STUN groups and fallback promotion through real ETCP 2026-10-12 01:01:11 +02:00
evgeny 164a3a1f0f Keep connection attempts available for STUN hints and verify signed provenance 2026-10-12 00:58:50 +02:00