Skip to content

Upgrade to iroh 1.4.1, lift the libc cap, drop Android - #76

Merged
andrewchen5678 merged 3 commits into
mainfrom
upgrade-iroh-1.4.1-drop-android
Oct 21, 2026
Merged

andrewchen5678 merged 3 commits into
mainfrom
upgrade-iroh-1.4.1-drop-android

Conversation

@andrewchen5678

Copy link
Copy Markdown
Collaborator

Summary

  • iroh 1.4.1: flexaccess-iroh v0.0.12 → v0.0.13; iroh fork rebased onto v1.4.1 (ezvpn-send-backpressure-1.4.1).
  • libc cap lifted (libc = "0.2", resolves 0.2.191). libc 0.2.190 limits in6_ifreq and the routing-socket constants to macOS, which broke the iOS slice in two places:
  • Other deps already at latest compatible versions (jni 0.22 skipped as Android-only).
  • Android support dropped for now: removes the JNI layer, the in-tunnel split-DNS forwarder and its run_tunnel hook, the VpnService tun constructor, the dns_proxy FFI config, Android deps, build-android.sh, the Android CI/release jobs and docs/Android-App.md. Releases no longer ship libezvpn-android.zip.
  • Version 0.0.58.

Test plan

  • cargo clippy --all-targets -- -D warnings + cargo test on Linux
  • Same on macOS (macvm), plus cargo clippy --lib --target aarch64-apple-ios, cargo check --lib --target aarch64-apple-ios-sim, ./build-apple.sh debug
  • netwatch fork tests on macOS (incl. constant-parity test)
  • Windows: not run locally (only comments changed in Windows-only files); CI covers it

🤖 Generated with Claude Code

Andrew Chen and others added 3 commits October 21, 2026 13:41
Bump flexaccess-iroh to v0.0.13 (iroh 1.4.1) and rebase the iroh fork
onto v1.4.1 (ezvpn-send-backpressure-1.4.1). Drop the libc < 0.2.190
cap: libc 0.2.190 limits `in6_ifreq` and the routing socket constants
to macOS, which broke the iOS slice in netdev and netwatch. netdev now
comes from a flexaccessdev fork carrying shellrow/netdev#192, and the
netwatch fork defines the routing constants itself. libc resolves to
0.2.191; everything else is already at its latest compatible version
(jni 0.22 skipped).

Verified: clippy + tests on Linux and macOS, cargo check for
aarch64-apple-ios and aarch64-apple-ios-sim on macvm.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
The ezvpn-android app is on hold, so remove its pieces from the core:
the JNI layer (src/ffi_android.rs), the Android-only in-tunnel split-DNS
forwarder (src/tunnel/dns_proxy.rs) and its `run_tunnel` hook, the
VpnService tun constructor, the `dns_proxy` FFI config, the logcat
logger, the Android-only dependencies (jni, android_logger,
ndk-context), build-android.sh, the CI and release jobs, and
docs/Android-App.md. The cfg gates collapse to iOS-only, and the
supported-target check no longer accepts Android. Git history keeps the
removed code for when it comes back.

Verified: clippy + tests on Linux and macOS, clippy for
aarch64-apple-ios, check for aarch64-apple-ios-sim, and
./build-apple.sh debug on macvm.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
@andrewchen5678
andrewchen5678 merged commit 00769d3 into main Oct 21, 2026
@andrewchen5678
andrewchen5678 deleted the upgrade-iroh-1.4.1-drop-android branch October 21, 2026 21:03
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.

1 participant