fn open()

in optee-utee/src/net/optee.rs [148:167]


    fn open(setup: Self::Setup) -> Result<Self::Handle, SocketError> {
        let mut handle: raw::TEE_iSocketHandle = ptr::null_mut();
        let mut protocol_error: u32 = 0;
        let mut setup = raw::TEE_udpSocket_Setup {
            ipVersion: setup.version,
            server_addr: setup.addr.as_ptr() as _,
            server_port: setup.port,
        };
        let ret = unsafe {
            ((*raw::TEE_udpSocket).open)(
                &mut handle,
                &mut setup as *mut raw::TEE_udpSocket_Setup as _,
                &mut protocol_error,
            )
        };
        match ret {
            raw::TEE_SUCCESS => Ok(Self(handle)),
            _ => Err(SocketError::from_raw_error(ret, protocol_error)),
        }
    }