Skip to content

Add RawMessageProvider trait and expand SendError/ReceiveError variants#756

Open
wdcui wants to merge 1 commit intomainfrom
wdcui/pr3f-raw-message
Open

Add RawMessageProvider trait and expand SendError/ReceiveError variants#756
wdcui wants to merge 1 commit intomainfrom
wdcui/pr3f-raw-message

Conversation

@wdcui
Copy link
Copy Markdown
Member

@wdcui wdcui commented Apr 7, 2026

Summary

  • Add RawMessageProvider trait for direct guest-host byte channels that bypass the IP stack. Default impl returns Err(Unavailable).
  • Add Provider supertrait bound + RawMessageProvider.
  • Expand SendError with Io(i32) and Unavailable variants; expand ReceiveError with ProtocolError and Eof variants. Update doc strings for shared usage across IPInterfaceProvider and RawMessageProvider.
  • Add stub impls in all platform crates (linux kernel, linux userland, LVBS, Windows userland) and the mock.

Split from #743.

Add SendError::Io(i32) and ReceiveError::{ProtocolError, Eof} variants.
Introduce RawMessageProvider trait for direct guest-broker byte-stream
messaging (bypassing IP stack), with default stubs. Add Provider
supertrait bound. Implement (empty defaults) for all platform crates.
Update net/phy.rs to match on new error variants.
@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 7, 2026

🤖 SemverChecks 🤖 ⚠️ Potential breaking API changes detected ⚠️

Click for details
--- failure trait_added_supertrait: non-sealed trait added new supertraits ---

Description:
A non-sealed trait added one or more supertraits, which breaks downstream implementations of the trait
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#generic-bounds-tighten
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.47.0/src/lints/trait_added_supertrait.ron

Failed in:
  trait litebox::platform::Provider gained RawMessageProvider in file /home/runner/work/litebox/litebox/litebox/src/platform/mod.rs:43

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