Skip to content

wfb-link, a userspace WiFiBroadcast radio stack for macOS

Infrastructure
Rust Latest v0.1.0 · 13d ago Security brief →

Features

  • Cross‑platform Rust facade for WFB link stacks
  • macOS userspace radio backend using RTL8812AU USB adapters (e.g., ALFA AWUS036ACH)
  • Linux native WFB-NG integration with rtl88xxau drivers
  • Android USB host runtime and JNI transport support
  • Product‑facing lifecycle API (`LinkBackend`, `LinkHandle`) for unified usage across platforms

Recent releases

View all 3 releases →
No immediate action
v0.1.0 New feature

Managed streams + Android USBHost + Signal metadata

No immediate action
v0.1.0-alpha.4 New feature

Combined stream + tunnel backend

v0.1.0-alpha.1 Breaking risk
⚠ Upgrade required
  • macOS 26 users should enable native IOUSBHost transport (`macos_usbhost.enabled = true` or `--macos-usbhost`) – the libusb claim path is not recommended
  • Older Rust API aliases `MacosUserspaceRadio*` are deprecated and will be removed in a future release
Notable features
  • First alpha release of `wfb-radio-service` production‑oriented macOS RTL8812AU userspace radio service
  • Addition of `wfb-radio-diag` for hardware bring‑up and RF/link diagnostics
  • Introduction of `wfb-tun-macos` utun bridge helper for WFB tunnel recovery
Full changelog

wfb-link v0.1.0-alpha.1

First alpha release of wfb-link, a cross-platform WFB link stack and Rust integration facade.

Included

  • wfb-radio-service: production-oriented macOS RTL8812AU userspace radio service.
  • wfb-radio-diag: hardware bring-up and RF/link diagnostics.
  • wfb-tun-macos: macOS utun bridge helper for WFB tunnel recovery.
  • Example production configs and integration docs.
  • Bundled libusb-1.0.0.dylib with binaries relinked to load it from ../lib.

Integration

Rust product binaries should pin this release by tag for now:

wfb-link = { git = "[email protected]:arc-edge/wfb-link.git", tag = "v0.1.0-alpha.1" }

Use the generic UserspaceRadio* API names for direct-radio integrations. The older
MacosUserspaceRadio* names remain as deprecated compatibility aliases.

Current Platform Shape

  • macOS: native userspace USB radio path for RTL8812AU adapters, tested with ALFA AWUS036ACH.
  • macOS 26: use the native IOUSBHost transport (macos_usbhost.enabled = true
    in service configs, or --macos-usbhost in diagnostic/runtime commands). The
    libusb claim path is not recommended on macOS 26.
  • Linux: intended path is native WFB-NG over wfb0 monitor mode with the aircrack/rtl88xxau driver.
  • Android: planned future backend using the same userspace radio contract with Android USB host transport.

Known Limitations

  • This is a pre-release. The Rust API is intended for product integration, but not yet crates.io-stable.
  • macOS binaries are ad-hoc signed, not notarized.
  • RF quality and long-distance acceptance profiles are still being validated.
  • Runtime IQK/LCK work is still evolving; use documented conservative profiles for production-style tests.
  • macOS direct-radio support currently targets RTL8812AU/AWUS036ACH-class adapters.

Verification

Built on macOS 15.7.4 arm64 from commit 82468ed. The packaged binaries target
Apple Silicon macOS and should run on newer macOS releases; macOS 26 hardware
access should use the IOUSBHost backend rather than libusb.

Package smoke-tested on macOS 26.4.1 arm64:

  • archive checksum verified and unpacked
  • packaged binaries launched with --help
  • packaged dylib load paths resolve through @executable_path/../lib
  • ad-hoc code signatures verified
  • read-only USB registry probe ran successfully; no RTL8812AU adapter was
    attached to that host during the package smoke, so macOS 26 hardware claim/init
    validation remains pending for a follow-up hardware-attached run

Checks run:

  • cargo fmt --all -- --check
  • cargo check --workspace --locked
  • cargo build -p wfb-link --examples --locked
  • cargo test --workspace --locked
  • cargo build --release --locked -p wfb-radio-service -p wfb-radio-diag -p wfb-tun
  • packaged binary help smoke for all three release binaries
  • codesign --verify for all packaged binaries and bundled libusb dylib

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

About

Stars
3
Forks
0
Languages
Rust Shell Java

Install & Platforms

Install via
cargo
Platforms
macos linux arm64

Beta — feedback welcome: [email protected]