- [Core] Implements TCP data pipe support.
- [Core] Fixes infinite prompt stream when configuration wizard is interrupted.
- [Core] Implements packet loss estimator (Issue #8).
- [Core] Fixes server crash when provided with malformatted client-provided subnets.
- [Core] Fixes client reconnection crash when DNS settings are not provided/applied.
- [Core] Implements client-provided subnet feature. For each subnet that the client claims to provide, the server will route all traffic belonging to that subnet to the client whenever the client is connected.
- [Core] Fixes the issue where launching a second
stun
server incorrectly clears the iptables MASQUERADE rule created by the previous, unrelatedstun
server. (Issue #2) - [Core] Improves timer code's robustness, including fixing a timer-related assertion error (Issue #4).
- [macOS] Fixes a crash during DNS settings restoration.
- [macOS] Adds
accept_dns_pushes
option to the client config wizard.
- [macOS] Adds the ability to automatically configure and restore DNS settings based on the server's pushed configuration.
- [macOS] Automatically removes existing route to destination host to work around the bug in macOS where stale routes from previous stun runs might stick around.
- [Core] Adds client/server-side MTU setting.
- [Core] Better handling for non-recoverable errors.
- [Core] Support for NAT64 carrier networks.
- [BSD] Initial working BSD version.
- [iOS] Implements error reporting.
- [Core] Fixes "0.0.0.0" IP addresses being handed out.
- [iOS] Initial working iOS app.