zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit cb649b769c4a8d1d5d703994976c2c9e4ae4e03b (tree)
parent c50ac9a764c9022e69c9885b17083d70223cb1aa
Author: Luna <git@l4.pm>
Date:   Mon, 30 Mar 2020 17:06:45 -0300

Fix ifreq definition

Diffstat:
Mlib/std/net.zig | 2+-
Mlib/std/os/bits/linux.zig | 18+++++++++---------
2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/lib/std/net.zig b/lib/std/net.zig @@ -551,7 +551,7 @@ fn if_nametoindex(name: []const u8) !u32 { else => {}, } - std.debug.warn("ival={}\n", .{ifr.ifr_ifru.ifru_ivalue}); + std.debug.warn("ival={}, rest={}\n", .{ ifr.ifr_ifru.ifru_ivalue, ifr.ifr_ifru }); return @bitCast(u32, ifr.ifr_ifru.ifru_ivalue); } diff --git a/lib/std/os/bits/linux.zig b/lib/std/os/bits/linux.zig @@ -1709,31 +1709,31 @@ pub const termios = extern struct { pub const SIOCGIFINDEX = 0x8933; pub const IFNAMESIZE = 16; -pub const ifmap = struct { - mem_start: u32, - mem_end: u32, - base_addr: i16, +pub const ifmap = extern struct { + mem_start: c_ulong, + mem_end: c_ulong, + base_addr: c_ushort, irq: u8, dma: u8, port: u8, }; -pub const ifreq = extern union { - ifr_ifrn: struct { +pub const ifreq = extern struct { + ifr_ifrn: extern union { name: [IFNAMESIZE]u8, }, - ifr_ifru: struct { + ifr_ifru: extern union { ifru_addr: sockaddr, ifru_dstaddr: sockaddr, ifru_broadaddr: sockaddr, ifru_netmask: sockaddr, ifru_hwaddr: sockaddr, - ifru_flags: i16, + ifru_flags: c_short, ifru_ivalue: i32, ifru_mtu: i32, ifru_map: ifmap, ifru_slave: [IFNAMESIZE]u8, ifru_newname: [IFNAMESIZE]u8, - ifru_data: [*:0]u8, + ifru_data: [*c]u8, }, };