Repository navigation
OpenRad 1.4.0 — Broadcast peer selection
OpenRad 1.4.0 adds multiple outgoing broadcast recipients and peer exclusions in both the CLI and desktop. Saved selections are shared through the service and apply without reconnecting.
- Select several peers to receive broadcasts, or exclude them from normal distribution. Use Settings → Outgoing broadcasts or
openrad broadcast-peer [--exclude] TARGET .... - Restore all eligible recipients with
--all; query the current selection without targets. Keep existing single-peer preferences and thebroadcast-peersalias. - Validate and save the full selection atomically, deduplicate targets, and reject invalid, ambiguous or self targets.
- Compile recipients on policy/channel changes. Frame forwarding iterates effective destinations without per-packet policy locks, RID lookups or exclusion-set scans; shared buffers and FIFO/cancellation bounds are retained.
- Include complete four-language controls, updated CLI/desktop guides, a synthetic Portuguese screenshot and documented performance measurements.
Fresh Linux x86-64 and Windows x64 builds use the same committed source. Linux uses Debian 12 / Rust 1.95; the CLI requires glibc 2.34+, desktop glibc 2.35+.
Downloads: Linux archive; offline Windows installer (standalone EXE or documentation ZIP); portable Windows ZIP for an already installed dedicated TAP adapter; and SHA256SUMS for all four distribution files.
Upgrade: Stop the old shared service with openrad stop and close the desktop before replacing binaries or installing. Keep CLI and desktop from this release together. Existing identities, memberships and saved preferences are retained.
Validation: Reuse the completed implementation checks: 303 default Linux tests, formatting and Linux/Windows Clippy, Windows test compilation, and eight inspected CPU-rendered settings screenshots covering four languages and two widths. The suites were not rerun for version and release-document changes. Release checks verify fresh executable versions, package checksums, architecture/imports, driver provenance and every extracted installer payload file.
Performance scope: Nine alternating pinned-CPU runs measured 5,000 broadcasts to 120 peers at 18.59 ms before / 18.69 ms after, within observed variation. Selecting 60 peers measured 9.44 ms; excluding 60 measured 9.46 ms. The separate 50,000 directed-frame case measured 5.16 / 5.45 ms. These synthetic routing/queue measurements exclude encryption, TAP and network I/O; live throughput and latency were not measured.
Windows remains experimental. Cross-compilation, synthetic rendering and Wine version checks do not establish native TAP/UAC or real Radmin interoperability. Applications are unsigned; the bundled TAP driver is the unchanged upstream signed package.