Draft
Conversation
|
Documentation for this PR has been generated and is available at: https://n0-computer.github.io/iroh/pr/4183/docs/iroh/ Last updated: 2026-04-28T13:51:31Z |
e8e8871 to
c87caa4
Compare
9ee9b3a to
39ae911
Compare
a036a85 to
f34f1e4
Compare
Trim verbose comments, the cargo-ndk-runner wrapper, and a couple of diagnostic dumps now that the job is green: * Wrapper: drop the conditional env-prefix dance (RUST_LOG and RUST_BACKTRACE are always set on the step), drop the set +e / capture rc / set -e pattern (set -e propagates the final adb shell's exit code already), drop the on-exit `adb shell rm` (the emulator is destroyed at job end). * Script: keep the boot-completed and route-readiness polling verbatim, but drop the on-timeout echo messages and the `ip route` / `ip -6 route` / `getprop net.dns1` dumps. `ip addr` alone confirms IPv6 is disabled (no `inet6` lines).
Make `is_usable_nameserver_config` and the Windows-anycast filter unconditional in `system_config`. The Android reader now returns the raw nameserver list it gets back from JNI, and the top-level `read_system_conf` runs the same `sanitize()` pass on every platform. * Folds the platform_tests module into the main tests module - the fixtures only need hickory-resolver, which is on every non-wasm target the system_config module is compiled for. * Hoists the platform dispatch from `read_system_conf` into a private `read_raw()` so the sanitize pass lives in one place.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
We currently use hickory-resolver to resolve the DNS system configuration. On Android, this path panics if no ndk JNI context has been initialized prior to initializing the DNS resolver.
Additionally, we have reports that Android reports bogus nameservers when tethered over an Iphone.
This PR fixes both issues:
install_android_jni_contextthat needs to be called before initalizing iroh to be able to use the system DNS config on androidThe PR also adds a CI job to run all iroh tests, including the DNS tests, in an Android emulator.
Breaking Changes
Notes & open questions
Change checklist
quic-rpciroh-gossipiroh-blobsdumbpipesendme