Skip to content

fix(ios): restore ATS protections#3820

Open
CompleteDotTech wants to merge 1 commit into
mainfrom
fix/3807-ios-ats
Open

fix(ios): restore ATS protections#3820
CompleteDotTech wants to merge 1 commit into
mainfrom
fix/3807-ios-ats

Conversation

@CompleteDotTech

@CompleteDotTech CompleteDotTech commented Jul 24, 2026

Copy link
Copy Markdown
Member

Summary

  • restore ATS protections in the shipping native iOS app
  • retain the narrow local-network allowance used for localhost and Tailscale IP connections
  • upgrade explicit HTTP MagicDNS URLs to HTTPS before they reach ATS
  • add regression coverage for the shipping plist and URL normalization

Root cause

The native app's Info.plist set NSAllowsArbitraryLoads to true, globally disabling App Transport Security. It also accepted explicit insecure .ts.net URLs that ATS correctly rejects once the global bypass is removed.

Validation

  • node scripts/mobile-tailscale-native.test.mjs
  • pnpm lint
  • Native iOS simulator build not run: Xcode is unavailable on this Windows host.

Deferred

Windows MSI signing remains blocked on acquiring a code-signing certificate and repository secrets; this PR intentionally does not change that distribution item.

Refs #3807

Copy link
Copy Markdown
Member Author

@BunsDev, this draft PR is ready for testing. Please run the documented macOS iOS simulator xcodebuild test validation and report the result here. The Windows host checks already passed; this is the remaining native XCTest coverage.

Copy link
Copy Markdown
Member Author

@BunsDev This PR is ready to merge after testing.

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.

Production-readiness audit: deferred distribution items (umbrella)

2 participants