- Add utun VPN daemon with config parsing, control socket, routing, and TUN interface
- Refactor net_emulator/u_async to support multiple independent instances
- Replace linked-list timeout management with heap-based implementation
- Fix timeout processing bug (process timeouts after select)
- Add comprehensive random timeout and instance isolation tests
- Update Makefile to build utun and new test targets
- Fix fragmentation algorithm violation: split last fragment into FE+regular blocks
- Add service packet support (headers 0xFC/0xFD) for control messages up to 256 bytes
- Add ETCP reset service packets (0x02/0x03) with 100ms retry and 10 attempt limit
- Add conn_reset() function for coordinated reset across connection components
- Add comprehensive test suite for all new features
- Update Makefile to build new test
- Move reset_test_data() and error count resets outside the main loop
- This prevents sent_count from being reset each iteration
- The test was incorrectly resetting counters for each packet, causing sent_count to always be 1
- Implement queue_wait_threshold() with automatic waiter checking in ll_queue
- Add pkt_normalizer_flush() to force buffer sending
- Enhance test suite with async wait tests, fragmentation verification, and buffer flush tests
- Fix test edge cases by flushing packer buffer between subtests
- Improve test reliability with increased iteration limits and while loop processing
- Add connection module for secure UDP communication with ECC/AES-CCM cryptography
- Implement Extended Transmission Control Protocol (etcp.c/h) for reliable
UDP transmission with packet ordering and loss recovery
- Add window management (congestion control) with dynamic window sizing
based on RTT and bandwidth
- Implement ACK handling, retransmission logic, and gap detection
- Add comprehensive test suite: unit tests, simple test, and stress test
with network emulation (packet loss, reordering, delay)
- Include mock u_async implementation for testing
- Update Makefile with new ETCP build targets
- Move all test files to tests/ directory
- Update Makefile to build tests in tests/ directory
- Add fragment reassembly timeout mechanism (500ms default)
- Add error count API (pkt_normalizer_get_error_count, pkt_normalizer_reset_error_count)
- Enhance error handling with timeout callbacks
- Add comprehensive stress tests and edge case tests
- Update .gitignore for build artifacts