in src/vtok_rpc/src/proto.rs [246:261]
fn accept(&self) -> IoResult<VsockStream> {
let mut addr: libc::sockaddr_vm = unsafe { std::mem::zeroed() };
let mut addr_len = size_of::<libc::sockaddr_vm>() as libc::socklen_t;
let cl_fd = unsafe {
libc::accept(
self.fd,
&mut addr as *mut _ as *mut libc::sockaddr,
&mut addr_len,
)
};
if cl_fd < 0 {
return Err(IoError::last_os_error());
}
Ok(unsafe { VsockStream::from_raw_fd(cl_fd) })
}