From f2401a07569b375aae77600755fb8e2ca615e93c Mon Sep 17 00:00:00 2001 From: daurnimator Date: Thu, 27 Oct 2022 22:36:27 +1100 Subject: [PATCH] Add sockaddr_vm for vSocckets on Linux --- lib/std/os/linux.zig | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/lib/std/os/linux.zig b/lib/std/os/linux.zig index f98cd828c0..da9ea74327 100644 --- a/lib/std/os/linux.zig +++ b/lib/std/os/linux.zig @@ -3265,6 +3265,21 @@ pub const sockaddr = extern struct { queue_id: u32, shared_umem_fd: u32, }; + + /// Address structure for vSockets + pub const vm = extern struct { + family: sa_family_t = AF.VSOCK, + reserved1: u16 = 0, + port: u32, + cid: u32, + flags: u8, + + /// The total size of this structure should be exactly the same as that of struct sockaddr. + zero: [3]u8 = [_]u8{0} ** 3, + comptime { + std.debug.assert(@sizeOf(vm) == @sizeOf(sockaddr)); + } + }; }; pub const mmsghdr = extern struct {