mirror of
https://github.com/amnezia-vpn/amneziawg-apple.git
synced 2026-10-13 21:34:11 +00:00
[PR #40] fix: harden iOS tunnel recovery and handshake freshness #39
Labels
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
amnezia-vpn/amneziawg-apple#39
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/amnezia-vpn/amneziawg-apple/pull/40
Author: @ibotpafos
Created: 8/12/2026
Status: 🔄 Open
Base:
master← Head:codex/retain-backend-on-transient-path-loss📝 Commits (6)
af0e02bfix: retain iOS backend on transient path loss3690f4cfix: refresh handshake liveness and engine2aa9d1cfix: include path policy in Xcode targets850cdbefix: pause backend after genuine offline grace0441d09Merge upstream master into stability fixb17f000fix: bound unsatisfied path and handshake freshness📊 Changes
7 files changed (+212 additions, -42 deletions)
View changed files
📝
Sources/WireGuardKit/HandshakeFreshnessEvaluator.swift(+7 -3)➕
Sources/WireGuardKit/NetworkPathRetentionPolicy.swift(+38 -0)📝
Sources/WireGuardKit/WireGuardAdapter.swift(+59 -37)📝
Tests/WireGuardKitTests/HandshakeFreshnessEvaluatorTests.swift(+13 -2)➕
Tests/WireGuardKitTests/NetworkPathRetentionPolicyTests.swift(+72 -0)➕
Tests/project_source_membership_test.sh(+17 -0)📝
WireGuard.xcodeproj/project.pbxproj(+6 -0)📄 Description
What changes
NWPath.unsatisfiedroute flip.amneziawg-go/v3v3.1.20260813and preserves AWG 3.1 support.Why
A transient NetworkExtension path event could stop the backend during a route change. The earlier retention version could also stay alive indefinitely if an offline path still enumerated a physical interface. Separately, stale or future handshake telemetry could be accepted as proof of the current connection.
Validation
make -B -C Sources/WireGuardKitGo build ARCHS=arm64go test ./...inSources/WireGuardKitGoswift test: 12 tests, 0 failuresgit diff --checkThe branch is merged with current upstream
master; final head:b17f0000e1a6e64e1087a14b64734ebc7a3a0d3b.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.