Struct libafl::bolts::llmp::LlmpMsg [−][src]
#[repr(C, packed)]pub struct LlmpMsg { pub tag: Tag, pub sender: ClientId, pub broker: BrokerId, pub flags: Flags, pub message_id: MessageId, pub buf_len: u64, pub buf_len_padded: u64, pub buf: [u8; 0], }
Message sent over the “wire”
Fields
tag: Tag
A tag
sender: ClientId
Sender of this messge
broker: BrokerId
ID of another Broker, for b2b messages
flags: Flags
flags, currently only used for indicating compression
message_id: MessageId
The message ID, unique per page
buf_len: u64
Buffer length as specified by the user
buf_len_padded: u64
(Actual) buffer length after padding
buf: [u8; 0]
The actual payload buf
Implementations
impl LlmpMsg
[src]
impl LlmpMsg
[src]The message we receive
#[must_use]pub unsafe fn as_slice_unsafe(&self) -> &[u8]
[src]
#[must_use]pub unsafe fn as_slice_unsafe(&self) -> &[u8]
[src]Gets the buffer from this message as slice, with the corrent length.
Safety
This is unsafe if somebody has access to shared mem pages on the system.
pub fn as_slice<SHM: ShMem>(
&self,
map: &mut LlmpSharedMap<SHM>
) -> Result<&[u8], Error>
[src]
pub fn as_slice<SHM: ShMem>(
&self,
map: &mut LlmpSharedMap<SHM>
) -> Result<&[u8], Error>
[src]Gets the buffer from this message as slice, with the corrent length.
pub fn in_map<SHM: ShMem>(&self, map: &mut LlmpSharedMap<SHM>) -> bool
[src]
pub fn in_map<SHM: ShMem>(&self, map: &mut LlmpSharedMap<SHM>) -> bool
[src]Returns true, if the pointer is, indeed, in the page of this shared map.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for LlmpMsg
impl Send for LlmpMsg
impl Sync for LlmpMsg
impl Unpin for LlmpMsg
impl UnwindSafe for LlmpMsg
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more