Skip to main content

EvalContextExt

Trait EvalContextExt 

Source
pub trait EvalContextExt<'tcx>: MiriInterpCxExt<'tcx> {
    // Provided methods
    fn socket(
        &mut self,
        domain: &OpTy<'tcx>,
        type_: &OpTy<'tcx>,
        protocol: &OpTy<'tcx>,
    ) -> InterpResult<'tcx, Scalar> { ... }
    fn bind(
        &mut self,
        socket: &OpTy<'tcx>,
        address: &OpTy<'tcx>,
        address_len: &OpTy<'tcx>,
    ) -> InterpResult<'tcx, Scalar> { ... }
    fn listen(
        &mut self,
        socket: &OpTy<'tcx>,
        backlog: &OpTy<'tcx>,
    ) -> InterpResult<'tcx, Scalar> { ... }
    fn accept4(
        &mut self,
        socket: &OpTy<'tcx>,
        address: &OpTy<'tcx>,
        address_len: &OpTy<'tcx>,
        flags: Option<&OpTy<'tcx>>,
        dest: &MPlaceTy<'tcx>,
    ) -> InterpResult<'tcx> { ... }
    fn connect(
        &mut self,
        socket: &OpTy<'tcx>,
        address: &OpTy<'tcx>,
        address_len: &OpTy<'tcx>,
        dest: &MPlaceTy<'tcx>,
    ) -> InterpResult<'tcx> { ... }
    fn setsockopt(
        &mut self,
        socket: &OpTy<'tcx>,
        level: &OpTy<'tcx>,
        option_name: &OpTy<'tcx>,
        option_value: &OpTy<'tcx>,
        option_len: &OpTy<'tcx>,
    ) -> InterpResult<'tcx, Scalar> { ... }
    fn getsockname(
        &mut self,
        socket: &OpTy<'tcx>,
        address: &OpTy<'tcx>,
        address_len: &OpTy<'tcx>,
    ) -> InterpResult<'tcx, Scalar> { ... }
    fn getpeername(
        &mut self,
        socket: &OpTy<'tcx>,
        address: &OpTy<'tcx>,
        address_len: &OpTy<'tcx>,
    ) -> InterpResult<'tcx, Scalar> { ... }
}

Provided Methods§

Source

fn socket( &mut self, domain: &OpTy<'tcx>, type_: &OpTy<'tcx>, protocol: &OpTy<'tcx>, ) -> InterpResult<'tcx, Scalar>

For more information on the arguments see the socket manpage: https://linux.die.net/man/2/socket

Source

fn bind( &mut self, socket: &OpTy<'tcx>, address: &OpTy<'tcx>, address_len: &OpTy<'tcx>, ) -> InterpResult<'tcx, Scalar>

Source

fn listen( &mut self, socket: &OpTy<'tcx>, backlog: &OpTy<'tcx>, ) -> InterpResult<'tcx, Scalar>

Source

fn accept4( &mut self, socket: &OpTy<'tcx>, address: &OpTy<'tcx>, address_len: &OpTy<'tcx>, flags: Option<&OpTy<'tcx>>, dest: &MPlaceTy<'tcx>, ) -> InterpResult<'tcx>

For more information on the arguments see the accept manpage: https://linux.die.net/man/2/accept4

Source

fn connect( &mut self, socket: &OpTy<'tcx>, address: &OpTy<'tcx>, address_len: &OpTy<'tcx>, dest: &MPlaceTy<'tcx>, ) -> InterpResult<'tcx>

Source

fn setsockopt( &mut self, socket: &OpTy<'tcx>, level: &OpTy<'tcx>, option_name: &OpTy<'tcx>, option_value: &OpTy<'tcx>, option_len: &OpTy<'tcx>, ) -> InterpResult<'tcx, Scalar>

Source

fn getsockname( &mut self, socket: &OpTy<'tcx>, address: &OpTy<'tcx>, address_len: &OpTy<'tcx>, ) -> InterpResult<'tcx, Scalar>

Source

fn getpeername( &mut self, socket: &OpTy<'tcx>, address: &OpTy<'tcx>, address_len: &OpTy<'tcx>, ) -> InterpResult<'tcx, Scalar>

Implementors§

Source§

impl<'tcx> EvalContextExt<'tcx> for MiriInterpCx<'tcx>