From 0546d427b4b2bed6ab581618d57608b08704de09 Mon Sep 17 00:00:00 2001 From: Stefano Garzarella <sgarzare@redhat.com> Date: Wed, 5 Jun 2019 10:04:52 +0200 Subject: [PATCH] linux: add VSOCK struct and constants Add struct sockaddr_vm and VMADDR_ constants to use VSOCK on Linux. VSOCK is present since Linux 3.9 Signed-off-by: Stefano Garzarella <sgarzare@redhat.com> --- src/unix/linux_like/linux/mod.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/unix/linux_like/linux/mod.rs b/src/unix/linux_like/linux/mod.rs index 3b7bc292..cd789842 100644 --- a/src/unix/linux_like/linux/mod.rs +++ b/src/unix/linux_like/linux/mod.rs @@ -474,6 +474,14 @@ s! { pub cookie: u32, pub len: u32 } + + pub struct sockaddr_vm { + pub svm_family: ::sa_family_t, + pub svm_reserved1: ::c_ushort, + pub svm_port: ::c_uint, + pub svm_cid: ::c_uint, + pub svm_zero: [u8; 4] + } } s_no_extra_traits!{ @@ -2000,6 +2008,13 @@ pub const ALG_SET_AEAD_AUTHSIZE: ::c_int = 5; pub const ALG_OP_DECRYPT: ::c_int = 0; pub const ALG_OP_ENCRYPT: ::c_int = 1; +// uapi/linux/vm_sockets.h +pub const VMADDR_CID_ANY: ::c_uint = 0xFFFFFFFF; +pub const VMADDR_CID_HYPERVISOR: ::c_uint = 0; +pub const VMADDR_CID_RESERVED: ::c_uint = 1; +pub const VMADDR_CID_HOST: ::c_uint = 2; +pub const VMADDR_PORT_ANY: ::c_uint = 0xFFFFFFFF; + // uapi/linux/inotify.h pub const IN_ACCESS: u32 = 0x0000_0001; pub const IN_MODIFY: u32 = 0x0000_0002; -- GitLab