std: improve msghdr definition

master
daurnimator 2019-04-21 18:03:57 +10:00
parent bb25f212b3
commit 9babcac7a6
No known key found for this signature in database
GPG Key ID: 45B429A8F9D9D22A
4 changed files with 27 additions and 16 deletions

View File

@ -42,14 +42,19 @@ pub const pthread_attr_t = extern struct {
};
pub const msghdr = extern struct {
msg_name: *u8,
/// optional address
msg_name: ?*sockaddr,
/// size of address
msg_namelen: socklen_t,
msg_iov: *iovec,
/// scatter/gather array
msg_iov: [*]iovec,
/// # elements in msg_iov
msg_iovlen: i32,
__pad1: i32,
msg_control: *u8,
/// ancillary data
msg_control: ?*c_void,
/// ancillary data buffer len
msg_controllen: socklen_t,
__pad2: socklen_t,
/// flags on received message
msg_flags: i32,
};

View File

@ -42,14 +42,19 @@ pub const pthread_attr_t = extern struct {
};
pub const msghdr = extern struct {
msg_name: *u8,
/// optional address
msg_name: ?*sockaddr,
/// size of address
msg_namelen: socklen_t,
msg_iov: *iovec,
/// scatter/gather array
msg_iov: [*]iovec,
/// # elements in msg_iov
msg_iovlen: i32,
__pad1: i32,
msg_control: *u8,
/// ancillary data
msg_control: ?*c_void,
/// ancillary data buffer len
msg_controllen: socklen_t,
__pad2: socklen_t,
/// flags on received message
msg_flags: i32,
};

View File

@ -415,12 +415,12 @@ pub fn syscall6(
pub extern fn clone(func: extern fn (arg: usize) u8, stack: usize, flags: u32, arg: usize, ptid: *i32, tls: usize, ctid: *i32) usize;
pub const msghdr = extern struct {
msg_name: *u8,
msg_name: ?*sockaddr,
msg_namelen: socklen_t,
msg_iov: *iovec,
msg_iov: [*]iovec,
msg_iovlen: i32,
__pad1: i32,
msg_control: *u8,
msg_control: ?*c_void,
msg_controllen: socklen_t,
__pad2: socklen_t,
msg_flags: i32,

View File

@ -1,5 +1,6 @@
const std = @import("../../std.zig");
const linux = std.os.linux;
const sockaddr = linux.sockaddr;
const socklen_t = linux.socklen_t;
const iovec = linux.iovec;
@ -483,12 +484,12 @@ pub nakedcc fn restore_rt() void {
}
pub const msghdr = extern struct {
msg_name: *u8,
msg_name: ?*sockaddr,
msg_namelen: socklen_t,
msg_iov: *iovec,
msg_iov: [*]iovec,
msg_iovlen: i32,
__pad1: i32,
msg_control: *u8,
msg_control: ?*c_void,
msg_controllen: socklen_t,
__pad2: socklen_t,
msg_flags: i32,