Repository navigation
v0.9.5 — maintenance: IronRDP pin bump + divergence shrink
Maintenance: IronRDP pin bump + vendored-divergence shrink
A dependency-maintenance release. No user-facing behavior change — the default runtime path is functionally unchanged. It brings macrdp current with upstream IronRDP and retires vendored divergence rather than adding it.
What changed
The IronRDP dependency pin was bumped 879ffed8 → a5d1c682 (133 upstream commits); two vendored forks and one divergence were retired.
ironrdp-rdpeusbfork retired. Its lenient USB-3 caps decode landed upstream, so the crate is now the plaina5d1c682git dependency. The USB URBDRC server (src/rdpeusb.rs) was ported toa5d1c682's split control/device PDUs — and the mstsc Xbox-controller USB redirect is live-verified on the bumped build, proving the hard-won mstsc-strict interop fixes survived the port.ironrdp-asyncvendor dropped. This was the v0.9.4 hotfix guard for the pre-auth framing DoS;a5d1c682already carries upstream Devolutions/IronRDP#1515'sfind_sizehardening, so that framing DoS is now fixed upstream in the pin, not by a local vendor.- QOI divergence harvested (upstream always-Rgb: Devolutions/IronRDP#1335 + Devolutions/IronRDP#1341).
- Absorbed into
src/: honor-client-desktop-size, rdpsnd format selection (Devolutions/IronRDP#1359 — the crate now owns it, so macrdp's localchoose_audio_formatdivergence is gone), and the egfx frame-ack signature (Devolutions/IronRDP#1345).
Net: −2 vendored forks, −1 divergence. vendor/ now holds 5 forks (acceptor, dvc, rdpdr, rdpeudp, server).
Verification
- End-to-end on FreeRDP (CredSSP/audit, rdpsnd AAC, EGFX H.264) and mstsc (USB redirection).
- The four in-tree abuse-fuzz harnesses, including the
find_sizedecoder fuzz that motivated v0.9.4 and a new UDP-multitransport fuzz. - Soaked 27.4 h on a Mac mini before landing — 0 panics, 0 restarts, RSS bounded — alongside the full adversarial abuse suite. Details: docs/pin-bump-soak-results.md.
Landed via #178.
Artifacts
macrdp-v0.9.5-aarch64-apple-darwin-app.zip— themacrdp.appbundle (Apple Silicon). Ad-hoc signed, so on first launch right-click → Open to get past Gatekeeper (or build a locally-notarized bundle withpackaging/make-app.sh+ a Developer ID). Includes the smart-card IFD handler and the HUD/shield helpers.macrdp-v0.9.5-aarch64-apple-darwin.tar.gz— the baremacrdpbinary.SHA256SUMS— checksums for both.
Verify a download: shasum -a 256 -c SHA256SUMS.
Full narrative notes for every release: docs/release-history.md.
Full Changelog: v0.9.4...v0.9.5