mirror of
https://github.com/ziglang/zig.git
synced 2025-12-06 14:23:09 +00:00
This was done by regex substitution with `sed`. I then manually went over the entire diff and fixed any incorrect changes. This diff also changes a lot of `callconv(.C)` to `callconv(.c)`, since my regex happened to also trigger here. I opted to leave these changes in, since they *are* a correct migration, even if they're not the one I was trying to do!
191 lines
3.8 KiB
Zig
191 lines
3.8 KiB
Zig
const std = @import("../std.zig");
|
|
|
|
const SIG = std.c.SIG;
|
|
const gid_t = std.c.gid_t;
|
|
const iovec = std.c.iovec;
|
|
const pid_t = std.c.pid_t;
|
|
const socklen_t = std.c.socklen_t;
|
|
const uid_t = std.c.uid_t;
|
|
|
|
pub extern "c" fn lwp_gettid() c_int;
|
|
pub extern "c" fn umtx_sleep(ptr: *const volatile c_int, value: c_int, timeout: c_int) c_int;
|
|
pub extern "c" fn umtx_wakeup(ptr: *const volatile c_int, count: c_int) c_int;
|
|
|
|
pub const mcontext_t = extern struct {
|
|
onstack: register_t, // XXX - sigcontext compat.
|
|
rdi: register_t,
|
|
rsi: register_t,
|
|
rdx: register_t,
|
|
rcx: register_t,
|
|
r8: register_t,
|
|
r9: register_t,
|
|
rax: register_t,
|
|
rbx: register_t,
|
|
rbp: register_t,
|
|
r10: register_t,
|
|
r11: register_t,
|
|
r12: register_t,
|
|
r13: register_t,
|
|
r14: register_t,
|
|
r15: register_t,
|
|
xflags: register_t,
|
|
trapno: register_t,
|
|
addr: register_t,
|
|
flags: register_t,
|
|
err: register_t,
|
|
rip: register_t,
|
|
cs: register_t,
|
|
rflags: register_t,
|
|
rsp: register_t, // machine state
|
|
ss: register_t,
|
|
|
|
len: c_uint, // sizeof(mcontext_t)
|
|
fpformat: c_uint,
|
|
ownedfp: c_uint,
|
|
reserved: c_uint,
|
|
unused: [8]c_uint,
|
|
|
|
// NOTE! 64-byte aligned as of here. Also must match savefpu structure.
|
|
fpregs: [256]c_int align(64),
|
|
};
|
|
|
|
pub const register_t = isize;
|
|
|
|
pub const E = enum(u16) {
|
|
/// No error occurred.
|
|
SUCCESS = 0,
|
|
|
|
PERM = 1,
|
|
NOENT = 2,
|
|
SRCH = 3,
|
|
INTR = 4,
|
|
IO = 5,
|
|
NXIO = 6,
|
|
@"2BIG" = 7,
|
|
NOEXEC = 8,
|
|
BADF = 9,
|
|
CHILD = 10,
|
|
DEADLK = 11,
|
|
NOMEM = 12,
|
|
ACCES = 13,
|
|
FAULT = 14,
|
|
NOTBLK = 15,
|
|
BUSY = 16,
|
|
EXIST = 17,
|
|
XDEV = 18,
|
|
NODEV = 19,
|
|
NOTDIR = 20,
|
|
ISDIR = 21,
|
|
INVAL = 22,
|
|
NFILE = 23,
|
|
MFILE = 24,
|
|
NOTTY = 25,
|
|
TXTBSY = 26,
|
|
FBIG = 27,
|
|
NOSPC = 28,
|
|
SPIPE = 29,
|
|
ROFS = 30,
|
|
MLINK = 31,
|
|
PIPE = 32,
|
|
DOM = 33,
|
|
RANGE = 34,
|
|
/// This code is also used for `WOULDBLOCK`.
|
|
AGAIN = 35,
|
|
INPROGRESS = 36,
|
|
ALREADY = 37,
|
|
NOTSOCK = 38,
|
|
DESTADDRREQ = 39,
|
|
MSGSIZE = 40,
|
|
PROTOTYPE = 41,
|
|
NOPROTOOPT = 42,
|
|
PROTONOSUPPORT = 43,
|
|
SOCKTNOSUPPORT = 44,
|
|
/// This code is also used for `NOTSUP`.
|
|
OPNOTSUPP = 45,
|
|
PFNOSUPPORT = 46,
|
|
AFNOSUPPORT = 47,
|
|
ADDRINUSE = 48,
|
|
ADDRNOTAVAIL = 49,
|
|
NETDOWN = 50,
|
|
NETUNREACH = 51,
|
|
NETRESET = 52,
|
|
CONNABORTED = 53,
|
|
CONNRESET = 54,
|
|
NOBUFS = 55,
|
|
ISCONN = 56,
|
|
NOTCONN = 57,
|
|
SHUTDOWN = 58,
|
|
TOOMANYREFS = 59,
|
|
TIMEDOUT = 60,
|
|
CONNREFUSED = 61,
|
|
LOOP = 62,
|
|
NAMETOOLONG = 63,
|
|
HOSTDOWN = 64,
|
|
HOSTUNREACH = 65,
|
|
NOTEMPTY = 66,
|
|
PROCLIM = 67,
|
|
USERS = 68,
|
|
DQUOT = 69,
|
|
STALE = 70,
|
|
REMOTE = 71,
|
|
BADRPC = 72,
|
|
RPCMISMATCH = 73,
|
|
PROGUNAVAIL = 74,
|
|
PROGMISMATCH = 75,
|
|
PROCUNAVAIL = 76,
|
|
NOLCK = 77,
|
|
NOSYS = 78,
|
|
FTYPE = 79,
|
|
AUTH = 80,
|
|
NEEDAUTH = 81,
|
|
IDRM = 82,
|
|
NOMSG = 83,
|
|
OVERFLOW = 84,
|
|
CANCELED = 85,
|
|
ILSEQ = 86,
|
|
NOATTR = 87,
|
|
DOOFUS = 88,
|
|
BADMSG = 89,
|
|
MULTIHOP = 90,
|
|
NOLINK = 91,
|
|
PROTO = 92,
|
|
NOMEDIUM = 93,
|
|
ASYNC = 99,
|
|
_,
|
|
};
|
|
|
|
pub const BADSIG = SIG.ERR;
|
|
|
|
pub const sig_t = *const fn (i32) callconv(.c) void;
|
|
|
|
pub const cmsghdr = extern struct {
|
|
len: socklen_t,
|
|
level: c_int,
|
|
type: c_int,
|
|
};
|
|
|
|
pub const cmsgcred = extern struct {
|
|
pid: pid_t,
|
|
uid: uid_t,
|
|
euid: uid_t,
|
|
gid: gid_t,
|
|
ngroups: c_short,
|
|
groups: [16]gid_t,
|
|
};
|
|
pub const sf_hdtr = extern struct {
|
|
headers: [*]iovec,
|
|
hdr_cnt: c_int,
|
|
trailers: [*]iovec,
|
|
trl_cnt: c_int,
|
|
};
|
|
|
|
pub const MS_SYNC = 0;
|
|
pub const MS_ASYNC = 1;
|
|
pub const MS_INVALIDATE = 2;
|
|
|
|
pub const POSIX_MADV_SEQUENTIAL = 2;
|
|
pub const POSIX_MADV_RANDOM = 1;
|
|
pub const POSIX_MADV_DONTNEED = 4;
|
|
pub const POSIX_MADV_NORMAL = 0;
|
|
pub const POSIX_MADV_WILLNEED = 3;
|