freebsd: add sockaddr structs

This commit is contained in:
Marcio Giaxa 2019-01-04 16:17:46 -02:00 committed by Andrew Kelley
parent 4d9547ff2e
commit 5c2a1055a0
2 changed files with 29 additions and 0 deletions

View File

@ -93,3 +93,28 @@ pub const dirent = extern struct {
d_pad1: u16,
d_name: [256]u8,
};
pub const in_port_t = u16;
pub const sa_family_t = u16;
pub const sockaddr = extern union {
in: sockaddr_in,
in6: sockaddr_in6,
};
pub const sockaddr_in = extern struct {
len: u8,
family: sa_family_t,
port: in_port_t,
addr: [16]u8,
zero: [8]u8,
};
pub const sockaddr_in6 = extern struct {
len: u8,
family: sa_family_t,
port: in_port_t,
flowinfo: u32,
addr: [16]u8,
scope_id: u32,
};

View File

@ -525,6 +525,10 @@ pub const TIOCGPKT = 0x80045438;
pub const TIOCGPTLCK = 0x80045439;
pub const TIOCGEXCL = 0x80045440;
pub const sockaddr = c.sockaddr;
pub const sockaddr_in = c.sockaddr_in;
pub const sockaddr_in6 = c.sockaddr_in6;
fn unsigned(s: i32) u32 {
return @bitCast(u32, s);
}