[][src]Struct nc::iocb_t

#[repr(C)]
pub struct iocb_t {
    pub aio_data: u64,
    pub aio_key: u32,
    pub aio_rw_flags: rwf_t,
    pub aio_lio_opcode: u16,
    pub aio_reqprio: i16,
    pub aio_fildes: u32,
    pub aio_buf: u64,
    pub aio_nbytes: u64,
    pub aio_offset: i64,
    pub aio_reserved2: u64,
    pub aio_flags: u32,
    pub aio_resfd: u32,
}

we always use a 64bit off_t when communicating with userland. its up to libraries to do the proper padding and aio_error abstraction

Fields

aio_data: u64

these are internal to the kernel/libc. data to be returned in event's data */

aio_key: u32

the kernel sets aio_key to the req #

aio_rw_flags: rwf_t

RWF_* flags

aio_lio_opcode: u16

common fields

aio_reqprio: i16aio_fildes: u32aio_buf: u64aio_nbytes: u64aio_offset: i64aio_reserved2: u64

extra parameters

aio_flags: u32

flags for the "struct iocb"

aio_resfd: u32

If the IOCB_FLAG_RESFD flag of "aio_flags" is set, this is an eventfd to signal AIO readiness to

Auto Trait Implementations

impl Unpin for iocb_t

impl Send for iocb_t

impl Sync for iocb_t

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]