diff options
| author | Marcio Giaxa <i@mgxm.me> | 2019-01-04 16:17:46 -0200 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2019-01-04 16:31:57 -0500 |
| commit | 5c2a1055a03d4ef9e4d292afe8b934cb6a7afa11 (patch) | |
| tree | 30330f84562defdc9bf0b4b8804c2614c4e81cb5 /std | |
| parent | 4d9547ff2e9377abeb87b53e30580cf1a561f9ce (diff) | |
| download | zig-5c2a1055a03d4ef9e4d292afe8b934cb6a7afa11.tar.gz zig-5c2a1055a03d4ef9e4d292afe8b934cb6a7afa11.zip | |
freebsd: add sockaddr structs
Diffstat (limited to 'std')
| -rw-r--r-- | std/c/freebsd.zig | 25 | ||||
| -rw-r--r-- | std/os/freebsd/index.zig | 4 |
2 files changed, 29 insertions, 0 deletions
diff --git a/std/c/freebsd.zig b/std/c/freebsd.zig index 4d5c3810e8..2f2f4c0a1b 100644 --- a/std/c/freebsd.zig +++ b/std/c/freebsd.zig @@ -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, +}; diff --git a/std/os/freebsd/index.zig b/std/os/freebsd/index.zig index 9bb683f69e..c333ef2ac4 100644 --- a/std/os/freebsd/index.zig +++ b/std/os/freebsd/index.zig @@ -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); } |
