Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

VPN server failure detection recovery #2779

Merged
merged 7 commits into from Apr 30, 2024

Conversation

graeme
Copy link
Contributor

@graeme graeme commented Apr 23, 2024

Task/Issue URL: https://app.asana.com/0/72649045549333/1206669340827392/f

Description:

  • We use the WireGuard handshakes to determine when a connection fails by checking that the last handshake time is less than 5 mins
  • When a failure is detected the client will call /register with server set to the name of the current (failed) server and mode set to failureRecovery. If the server is not in the "active" status on the controller a new registration will be returned otherwise the previous data will be returned (this data should be checked against the current tunnel data including allowedIPs).
  • If the re-key attempt fails it will be retried periodically.

Steps to test this PR:

  1. This is pretty hard to test on iOS. Perhaps trust that the logic works and just rely on the macOS test steps.

Copy Testing:

  • Use of correct apostrophes in new copy, ie rather than '

Orientation Testing:

  • Portrait
  • Landscape

Device Testing:

  • iPhone SE (1st Gen)
  • iPhone 8
  • iPhone X
  • iPhone 14 Pro
  • iPad

OS Testing:

  • iOS 14
  • iOS 15
  • iOS 16

Theme Testing:

  • Light theme
  • Dark theme

Internal references:

Software Engineering Expectations
Technical Design Template

@graeme graeme merged commit ae60548 into main Apr 30, 2024
13 checks passed
@graeme graeme deleted the graeme/vpn-server-failure-detection-recovery branch April 30, 2024 09:23
samsymons added a commit that referenced this pull request Apr 30, 2024
* main:
  Fix Kingfisher deprecation warnings (#2799)
  VPN server failure detection recovery (#2779)
samsymons added a commit that referenced this pull request May 1, 2024
* main:
  Release 7.118.0-1 (#2812)
  [Release PR] Update VPN metadata reporter (#2808)
  fix address bar weirdness (#2810)
  Fix RMF button styling for "big_two_action" format (#2811)
  Existing experiment disabled, the new Settings experiment activated (#2801)
  Create Asana Subtask on PR requested (#2803)
  Remove ATB from default params (#2430)
  Fix Kingfisher deprecation warnings (#2799)
  VPN server failure detection recovery (#2779)
  Disable the feedback send button when there’s no text (#2800)
samsymons added a commit that referenced this pull request May 1, 2024
# By Sam Symons (3) and others
# Via Chris Brind (1) and GitHub (1)
* main:
  Release 7.118.0-1 (#2812)
  [Release PR] Update VPN metadata reporter (#2808)
  fix address bar weirdness (#2810)
  Fix RMF button styling for "big_two_action" format (#2811)
  Existing experiment disabled, the new Settings experiment activated (#2801)
  Create Asana Subtask on PR requested (#2803)
  Remove ATB from default params (#2430)
  Fix Kingfisher deprecation warnings (#2799)
  VPN server failure detection recovery (#2779)

# Conflicts:
#	DuckDuckGo.xcodeproj/project.pbxproj
#	DuckDuckGo.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants