pub struct MeshNodeHandle { /* private fields */ }Expand description
FFI handle for a MeshNode.
HandleGuard-protected: the box stays leaked across _free;
ops register via try_enter and _free quiesces them via
begin_free. Without this, an unconditional Box::from_raw
would race concurrent net_mesh_send (and ~60 other entry
points) into UAF on the dropped Box.
inner and channel_configs live in ManuallyDrop so
_free can take them out after the drain. Other Arc clones
held by surviving MeshStreamHandle._node keep MeshNode
alive until those streams are also freed.
Auto Trait Implementations§
impl !Freeze for MeshNodeHandle
impl !RefUnwindSafe for MeshNodeHandle
impl Send for MeshNodeHandle
impl Sync for MeshNodeHandle
impl Unpin for MeshNodeHandle
impl UnsafeUnpin for MeshNodeHandle
impl !UnwindSafe for MeshNodeHandle
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more