| ... | @@ -174,6 +174,7 @@ pub const blksize_t = switch (native_os) { | ... | @@ -174,6 +174,7 @@ pub const blksize_t = switch (native_os) { |
| 174 | .emscripten => emscripten.blksize_t, | 174 | .emscripten => emscripten.blksize_t, |
| 175 | // https://github.com/SerenityOS/serenity/blob/b98f537f117b341788023ab82e0c11ca9ae29a57/Kernel/API/POSIX/sys/types.h#L42 | 175 | // https://github.com/SerenityOS/serenity/blob/b98f537f117b341788023ab82e0c11ca9ae29a57/Kernel/API/POSIX/sys/types.h#L42 |
| 176 | .serenity => u64, | 176 | .serenity => u64, |
| | 177 | .dragonfly => i64, |
| 177 | else => i32, | 178 | else => i32, |
| 178 | }; | 179 | }; |
| 179 | | 180 | |
| ... | @@ -217,7 +218,7 @@ pub const passwd = switch (native_os) { | ... | @@ -217,7 +218,7 @@ pub const passwd = switch (native_os) { |
| 217 | }; | 218 | }; |
| 218 | | 219 | |
| 219 | pub const group = switch (native_os) { | 220 | pub const group = switch (native_os) { |
| 220 | .linux, .freebsd, .openbsd, .dragonfly, .netbsd, .driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos => extern struct { | 221 | .linux, .freebsd, .openbsd, .dragonfly, .netbsd, .driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos, .serenity => extern struct { |
| 221 | name: ?[*:0]const u8, | 222 | name: ?[*:0]const u8, |
| 222 | passwd: ?[*:0]const u8, | 223 | passwd: ?[*:0]const u8, |
| 223 | gid: gid_t, | 224 | gid: gid_t, |
| ... | @@ -318,7 +319,7 @@ pub const clockid_t = switch (native_os) { | ... | @@ -318,7 +319,7 @@ pub const clockid_t = switch (native_os) { |
| 318 | THREAD_CPUTIME_ID = 0x20000000, | 319 | THREAD_CPUTIME_ID = 0x20000000, |
| 319 | PROCESS_CPUTIME_ID = 0x40000000, | 320 | PROCESS_CPUTIME_ID = 0x40000000, |
| 320 | }, | 321 | }, |
| 321 | .dragonfly => enum(u32) { | 322 | .dragonfly => enum(c_ulong) { |
| 322 | REALTIME = 0, | 323 | REALTIME = 0, |
| 323 | VIRTUAL = 1, | 324 | VIRTUAL = 1, |
| 324 | PROF = 2, | 325 | PROF = 2, |
| ... | @@ -1978,13 +1979,20 @@ pub const RLIM = switch (native_os) { | ... | @@ -1978,13 +1979,20 @@ pub const RLIM = switch (native_os) { |
| 1978 | .linux => linux.RLIM, | 1979 | .linux => linux.RLIM, |
| 1979 | .emscripten => emscripten.RLIM, | 1980 | .emscripten => emscripten.RLIM, |
| 1980 | // https://github.com/SerenityOS/serenity/blob/aae106e37b48f2158e68902293df1e4bf7b80c0f/Userland/Libraries/LibC/sys/resource.h#L52 | 1981 | // https://github.com/SerenityOS/serenity/blob/aae106e37b48f2158e68902293df1e4bf7b80c0f/Userland/Libraries/LibC/sys/resource.h#L52 |
| 1981 | .openbsd, .haiku, .dragonfly, .netbsd, .freebsd, .driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos, .serenity => struct { | 1982 | .openbsd, .dragonfly, .netbsd, .freebsd, .driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos, .serenity => struct { |
| 1982 | /// No limit | 1983 | /// No limit |
| 1983 | pub const INFINITY: rlim_t = (1 << 63) - 1; | 1984 | pub const INFINITY: rlim_t = (1 << 63) - 1; |
| 1984 | | 1985 | |
| 1985 | pub const SAVED_MAX = INFINITY; | 1986 | pub const SAVED_MAX = INFINITY; |
| 1986 | pub const SAVED_CUR = INFINITY; | 1987 | pub const SAVED_CUR = INFINITY; |
| 1987 | }, | 1988 | }, |
| | 1989 | .haiku => struct { |
| | 1990 | /// No limit |
| | 1991 | pub const INFINITY: rlim_t = 0xffffffff; |
| | 1992 | |
| | 1993 | pub const SAVED_MAX = INFINITY; |
| | 1994 | pub const SAVED_CUR = INFINITY; |
| | 1995 | }, |
| 1988 | .illumos => struct { | 1996 | .illumos => struct { |
| 1989 | /// No limit | 1997 | /// No limit |
| 1990 | pub const INFINITY: rlim_t = (1 << 63) - 3; | 1998 | pub const INFINITY: rlim_t = (1 << 63) - 3; |
| ... | @@ -4085,6 +4093,10 @@ pub const clock_t = switch (native_os) { | ... | @@ -4085,6 +4093,10 @@ pub const clock_t = switch (native_os) { |
| 4085 | pub const cpu_set_t = switch (native_os) { | 4093 | pub const cpu_set_t = switch (native_os) { |
| 4086 | .linux => linux.cpu_set_t, | 4094 | .linux => linux.cpu_set_t, |
| 4087 | .emscripten => emscripten.cpu_set_t, | 4095 | .emscripten => emscripten.cpu_set_t, |
| | 4096 | .dragonfly => extern struct { |
| | 4097 | ary: [4]u64, |
| | 4098 | }, |
| | 4099 | .freebsd => [1024 / @bitSizeOf(c_ulong)]c_ulong, |
| 4088 | else => void, | 4100 | else => void, |
| 4089 | }; | 4101 | }; |
| 4090 | pub const dl_phdr_info = switch (native_os) { | 4102 | pub const dl_phdr_info = switch (native_os) { |
| ... | @@ -4320,6 +4332,10 @@ const posix_msghdr_const = extern struct { | ... | @@ -4320,6 +4332,10 @@ const posix_msghdr_const = extern struct { |
| 4320 | }; | 4332 | }; |
| 4321 | | 4333 | |
| 4322 | pub const mmsghdr = switch (native_os) { | 4334 | pub const mmsghdr = switch (native_os) { |
| | 4335 | .freebsd => extern struct { |
| | 4336 | hdr: msghdr, |
| | 4337 | len: isize, |
| | 4338 | }, |
| 4323 | .linux => linux.mmsghdr, | 4339 | .linux => linux.mmsghdr, |
| 4324 | else => extern struct { | 4340 | else => extern struct { |
| 4325 | hdr: msghdr, | 4341 | hdr: msghdr, |
| ... | @@ -4470,7 +4486,8 @@ pub const rlim_t = switch (native_os) { | ... | @@ -4470,7 +4486,8 @@ pub const rlim_t = switch (native_os) { |
| 4470 | .linux => linux.rlim_t, | 4486 | .linux => linux.rlim_t, |
| 4471 | .emscripten => emscripten.rlim_t, | 4487 | .emscripten => emscripten.rlim_t, |
| 4472 | .openbsd, .netbsd, .illumos, .driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos => u64, | 4488 | .openbsd, .netbsd, .illumos, .driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos => u64, |
| 4473 | .haiku, .dragonfly, .freebsd => i64, | 4489 | .dragonfly, .freebsd => i64, |
| | 4490 | .haiku => c_ulong, |
| 4474 | // https://github.com/SerenityOS/serenity/blob/aae106e37b48f2158e68902293df1e4bf7b80c0f/Userland/Libraries/LibC/sys/resource.h#L54 | 4491 | // https://github.com/SerenityOS/serenity/blob/aae106e37b48f2158e68902293df1e4bf7b80c0f/Userland/Libraries/LibC/sys/resource.h#L54 |
| 4475 | .serenity => usize, | 4492 | .serenity => usize, |
| 4476 | else => void, | 4493 | else => void, |
| ... | @@ -4840,12 +4857,15 @@ pub const siginfo_t = switch (native_os) { | ... | @@ -4840,12 +4857,15 @@ pub const siginfo_t = switch (native_os) { |
| 4840 | }, | 4857 | }, |
| 4841 | .haiku => extern struct { | 4858 | .haiku => extern struct { |
| 4842 | signo: SIG, | 4859 | signo: SIG, |
| 4843 | code: i32, | 4860 | code: c_int, |
| 4844 | errno: i32, | 4861 | errno: c_int, |
| 4845 | | 4862 | |
| 4846 | pid: pid_t, | 4863 | pid: pid_t, |
| 4847 | uid: uid_t, | 4864 | uid: uid_t, |
| 4848 | addr: *allowzero anyopaque, | 4865 | addr: *allowzero anyopaque, |
| | 4866 | status: c_int, |
| | 4867 | band: c_long, |
| | 4868 | value: sigval, |
| 4849 | }, | 4869 | }, |
| 4850 | .openbsd => extern struct { | 4870 | .openbsd => extern struct { |
| 4851 | signo: SIG, | 4871 | signo: SIG, |
| ... | @@ -4854,9 +4874,9 @@ pub const siginfo_t = switch (native_os) { | ... | @@ -4854,9 +4874,9 @@ pub const siginfo_t = switch (native_os) { |
| 4854 | data: extern union { | 4874 | data: extern union { |
| 4855 | proc: extern struct { | 4875 | proc: extern struct { |
| 4856 | pid: pid_t, | 4876 | pid: pid_t, |
| | 4877 | uid: uid_t, |
| 4857 | pdata: extern union { | 4878 | pdata: extern union { |
| 4858 | kill: extern struct { | 4879 | kill: extern struct { |
| 4859 | uid: uid_t, | | |
| 4860 | value: sigval, | 4880 | value: sigval, |
| 4861 | }, | 4881 | }, |
| 4862 | cld: extern struct { | 4882 | cld: extern struct { |
| ... | @@ -4904,7 +4924,7 @@ pub const sigset_t = switch (native_os) { | ... | @@ -4904,7 +4924,7 @@ pub const sigset_t = switch (native_os) { |
| 4904 | pub const sigval = switch (native_os) { | 4924 | pub const sigval = switch (native_os) { |
| 4905 | .linux => linux.sigval, | 4925 | .linux => linux.sigval, |
| 4906 | // https://github.com/SerenityOS/serenity/blob/ec492a1a0819e6239ea44156825c4ee7234ca3db/Kernel/API/POSIX/signal.h#L22-L25 | 4926 | // https://github.com/SerenityOS/serenity/blob/ec492a1a0819e6239ea44156825c4ee7234ca3db/Kernel/API/POSIX/signal.h#L22-L25 |
| 4907 | .openbsd, .dragonfly, .freebsd, .serenity => extern union { | 4927 | .openbsd, .dragonfly, .freebsd, .haiku, .serenity => extern union { |
| 4908 | int: c_int, | 4928 | int: c_int, |
| 4909 | ptr: ?*anyopaque, | 4929 | ptr: ?*anyopaque, |
| 4910 | }, | 4930 | }, |
| ... | @@ -5205,7 +5225,7 @@ pub const sockaddr = switch (native_os) { | ... | @@ -5205,7 +5225,7 @@ pub const sockaddr = switch (native_os) { |
| 5205 | /// address family | 5225 | /// address family |
| 5206 | family: sa_family_t, | 5226 | family: sa_family_t, |
| 5207 | /// actually longer; address value | 5227 | /// actually longer; address value |
| 5208 | data: [14]u8, | 5228 | data: [30]u8, |
| 5209 | | 5229 | |
| 5210 | pub const SS_MAXSIZE = 128; | 5230 | pub const SS_MAXSIZE = 128; |
| 5211 | pub const storage = extern struct { | 5231 | pub const storage = extern struct { |
| ... | @@ -5224,7 +5244,7 @@ pub const sockaddr = switch (native_os) { | ... | @@ -5224,7 +5244,7 @@ pub const sockaddr = switch (native_os) { |
| 5224 | family: sa_family_t = AF.INET, | 5244 | family: sa_family_t = AF.INET, |
| 5225 | port: in_port_t, | 5245 | port: in_port_t, |
| 5226 | addr: u32, | 5246 | addr: u32, |
| 5227 | zero: [8]u8 = [8]u8{ 0, 0, 0, 0, 0, 0, 0, 0 }, | 5247 | zero: [24]u8 = @splat(0), |
| 5228 | }; | 5248 | }; |
| 5229 | | 5249 | |
| 5230 | pub const in6 = extern struct { | 5250 | pub const in6 = extern struct { |
| ... | @@ -5239,7 +5259,7 @@ pub const sockaddr = switch (native_os) { | ... | @@ -5239,7 +5259,7 @@ pub const sockaddr = switch (native_os) { |
| 5239 | pub const un = extern struct { | 5259 | pub const un = extern struct { |
| 5240 | len: u8 = @sizeOf(un), | 5260 | len: u8 = @sizeOf(un), |
| 5241 | family: sa_family_t = AF.UNIX, | 5261 | family: sa_family_t = AF.UNIX, |
| 5242 | path: [104]u8, | 5262 | path: [126]u8, |
| 5243 | }; | 5263 | }; |
| 5244 | }, | 5264 | }, |
| 5245 | .openbsd => extern struct { | 5265 | .openbsd => extern struct { |
| ... | @@ -5738,7 +5758,7 @@ pub const PF = if (builtin.abi.isAndroid()) struct { | ... | @@ -5738,7 +5758,7 @@ pub const PF = if (builtin.abi.isAndroid()) struct { |
| 5738 | pub const PIP = AF.pseudo_PIP; | 5758 | pub const PIP = AF.pseudo_PIP; |
| 5739 | pub const ISDN = AF.ISDN; | 5759 | pub const ISDN = AF.ISDN; |
| 5740 | pub const KEY = AF.pseudo_KEY; | 5760 | pub const KEY = AF.pseudo_KEY; |
| 5741 | pub const INET6 = AF.pseudo_INET6; | 5761 | pub const INET6 = AF.INET6; |
| 5742 | pub const NATM = AF.NATM; | 5762 | pub const NATM = AF.NATM; |
| 5743 | pub const ATM = AF.ATM; | 5763 | pub const ATM = AF.ATM; |
| 5744 | pub const NETGRAPH = AF.NETGRAPH; | 5764 | pub const NETGRAPH = AF.NETGRAPH; |
| ... | @@ -7222,7 +7242,7 @@ pub const utsname = switch (native_os) { | ... | @@ -7222,7 +7242,7 @@ pub const utsname = switch (native_os) { |
| 7222 | machine: [256:0]u8, | 7242 | machine: [256:0]u8, |
| 7223 | domainname: [256:0]u8, | 7243 | domainname: [256:0]u8, |
| 7224 | }, | 7244 | }, |
| 7225 | .driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos => extern struct { | 7245 | .openbsd, .driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos => extern struct { |
| 7226 | sysname: [255:0]u8, | 7246 | sysname: [255:0]u8, |
| 7227 | nodename: [255:0]u8, | 7247 | nodename: [255:0]u8, |
| 7228 | release: [255:0]u8, | 7248 | release: [255:0]u8, |
| ... | @@ -7337,13 +7357,12 @@ pub const RTLD = switch (native_os) { | ... | @@ -7337,13 +7357,12 @@ pub const RTLD = switch (native_os) { |
| 7337 | }, | 7357 | }, |
| 7338 | // https://github.com/SerenityOS/serenity/blob/36a26d7fa80bc9c72b19442912d8967f448368ff/Userland/Libraries/LibC/dlfcn.h#L13-L17 | 7358 | // https://github.com/SerenityOS/serenity/blob/36a26d7fa80bc9c72b19442912d8967f448368ff/Userland/Libraries/LibC/dlfcn.h#L13-L17 |
| 7339 | .serenity => packed struct(c_int) { | 7359 | .serenity => packed struct(c_int) { |
| 7340 | DEFAULT: bool = false, | 7360 | _0: u1, |
| 7341 | _1: u1, | | |
| 7342 | LAZY: bool = false, | 7361 | LAZY: bool = false, |
| 7343 | NOW: bool = false, | 7362 | NOW: bool = false, |
| 7344 | GLOBAL: bool = false, | 7363 | GLOBAL: bool = false, |
| 7345 | LOCAL: bool = false, | 7364 | LOCAL: bool = false, |
| 7346 | _: @Int(.unsigned, @bitSizeOf(c_int) - 6) = 0, | 7365 | _: @Int(.unsigned, @bitSizeOf(c_int) - 5) = 0, |
| 7347 | }, | 7366 | }, |
| 7348 | else => void, | 7367 | else => void, |
| 7349 | }; | 7368 | }; |
| ... | @@ -7884,11 +7903,11 @@ pub const Stat = switch (native_os) { | ... | @@ -7884,11 +7903,11 @@ pub const Stat = switch (native_os) { |
| 7884 | ctim: timespec, | 7903 | ctim: timespec, |
| 7885 | size: c_ulong, | 7904 | size: c_ulong, |
| 7886 | blocks: i64, | 7905 | blocks: i64, |
| 7887 | blksize: u32, | 7906 | _old_blksize: u32, |
| 7888 | flags: u32, | 7907 | flags: u32, |
| 7889 | gen: u32, | 7908 | gen: u32, |
| 7890 | lspare: i32, | 7909 | lspare: i32, |
| 7891 | qspare1: i64, | 7910 | blksize: blksize_t, |
| 7892 | qspare2: i64, | 7911 | qspare2: i64, |
| 7893 | pub fn atime(self: @This()) timespec { | 7912 | pub fn atime(self: @This()) timespec { |
| 7894 | return self.atim; | 7913 | return self.atim; |
| ... | @@ -7999,7 +8018,7 @@ pub const Stat = switch (native_os) { | ... | @@ -7999,7 +8018,7 @@ pub const Stat = switch (native_os) { |
| 7999 | | 8018 | |
| 8000 | pub const pthread_spinlock_t = switch (native_os) { | 8019 | pub const pthread_spinlock_t = switch (native_os) { |
| 8001 | .openbsd => openbsd.pthread_spinlock_t, | 8020 | .openbsd => openbsd.pthread_spinlock_t, |
| 8002 | .freebsd => extern struct { | 8021 | .freebsd, .dragonfly => extern struct { |
| 8003 | inner: ?*anyopaque = null, | 8022 | inner: ?*anyopaque = null, |
| 8004 | }, | 8023 | }, |
| 8005 | .netbsd => extern struct { | 8024 | .netbsd => extern struct { |
| ... | @@ -8182,7 +8201,7 @@ pub const pthread_rwlock_t = switch (native_os) { | ... | @@ -8182,7 +8201,7 @@ pub const pthread_rwlock_t = switch (native_os) { |
| 8182 | }; | 8201 | }; |
| 8183 | | 8202 | |
| 8184 | pub const pthread_attr_t = switch (native_os) { | 8203 | pub const pthread_attr_t = switch (native_os) { |
| 8185 | .linux, .emscripten, .dragonfly => extern struct { | 8204 | .linux, .emscripten => extern struct { |
| 8186 | __size: [56]u8, | 8205 | __size: [56]u8, |
| 8187 | __align: c_long, | 8206 | __align: c_long, |
| 8188 | }, | 8207 | }, |
| ... | @@ -8191,7 +8210,7 @@ pub const pthread_attr_t = switch (native_os) { | ... | @@ -8191,7 +8210,7 @@ pub const pthread_attr_t = switch (native_os) { |
| 8191 | __opaque: [56]u8, | 8210 | __opaque: [56]u8, |
| 8192 | }, | 8211 | }, |
| 8193 | // https://github.com/SerenityOS/serenity/blob/b98f537f117b341788023ab82e0c11ca9ae29a57/Kernel/API/POSIX/sys/types.h#L75 | 8212 | // https://github.com/SerenityOS/serenity/blob/b98f537f117b341788023ab82e0c11ca9ae29a57/Kernel/API/POSIX/sys/types.h#L75 |
| 8194 | .freebsd, .openbsd, .serenity => extern struct { | 8213 | .dragonfly, .freebsd, .haiku, .openbsd, .serenity => extern struct { |
| 8195 | inner: ?*anyopaque = null, | 8214 | inner: ?*anyopaque = null, |
| 8196 | }, | 8215 | }, |
| 8197 | .illumos => extern struct { | 8216 | .illumos => extern struct { |
| ... | @@ -8202,13 +8221,6 @@ pub const pthread_attr_t = switch (native_os) { | ... | @@ -8202,13 +8221,6 @@ pub const pthread_attr_t = switch (native_os) { |
| 8202 | flags: i32, | 8221 | flags: i32, |
| 8203 | private: ?*anyopaque, | 8222 | private: ?*anyopaque, |
| 8204 | }, | 8223 | }, |
| 8205 | .haiku => extern struct { | | |
| 8206 | detach_state: i32, | | |
| 8207 | sched_priority: i32, | | |
| 8208 | stack_size: i32, | | |
| 8209 | guard_size: i32, | | |
| 8210 | stack_address: ?*anyopaque, | | |
| 8211 | }, | | |
| 8212 | else => void, | 8224 | else => void, |
| 8213 | }; | 8225 | }; |
| 8214 | | 8226 | |
| ... | @@ -8216,7 +8228,7 @@ pub const pthread_key_t = switch (native_os) { | ... | @@ -8216,7 +8228,7 @@ pub const pthread_key_t = switch (native_os) { |
| 8216 | .linux, .emscripten => c_uint, | 8228 | .linux, .emscripten => c_uint, |
| 8217 | .driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos => c_ulong, | 8229 | .driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos => c_ulong, |
| 8218 | // https://github.com/SerenityOS/serenity/blob/b98f537f117b341788023ab82e0c11ca9ae29a57/Kernel/API/POSIX/sys/types.h#L65 | 8230 | // https://github.com/SerenityOS/serenity/blob/b98f537f117b341788023ab82e0c11ca9ae29a57/Kernel/API/POSIX/sys/types.h#L65 |
| 8219 | .openbsd, .illumos, .serenity => c_int, | 8231 | .dragonfly, .freebsd, .openbsd, .haiku, .illumos, .serenity => c_int, |
| 8220 | else => void, | 8232 | else => void, |
| 8221 | }; | 8233 | }; |
| 8222 | | 8234 | |
| ... | @@ -9033,12 +9045,16 @@ pub const termios = switch (native_os) { | ... | @@ -9033,12 +9045,16 @@ pub const termios = switch (native_os) { |
| 9033 | }, | 9045 | }, |
| 9034 | .haiku => extern struct { | 9046 | .haiku => extern struct { |
| 9035 | iflag: tc_iflag_t, | 9047 | iflag: tc_iflag_t, |
| | 9048 | ispeed: u16, |
| 9036 | oflag: tc_oflag_t, | 9049 | oflag: tc_oflag_t, |
| | 9050 | ospeed: u16, |
| 9037 | cflag: tc_cflag_t, | 9051 | cflag: tc_cflag_t, |
| | 9052 | ispeed_high: u16, |
| 9038 | lflag: tc_lflag_t, | 9053 | lflag: tc_lflag_t, |
| | 9054 | ospeed_high: u16, |
| 9039 | line: cc_t, | 9055 | line: cc_t, |
| 9040 | ispeed: speed_t, | 9056 | _pad1: u8 = 0, |
| 9041 | ospeed: speed_t, | 9057 | _pad2: u8 = 0, |
| 9042 | cc: [NCCS]cc_t, | 9058 | cc: [NCCS]cc_t, |
| 9043 | }, | 9059 | }, |
| 9044 | .illumos => extern struct { | 9060 | .illumos => extern struct { |
| ... | @@ -9115,7 +9131,7 @@ pub const tc_iflag_t = switch (native_os) { | ... | @@ -9115,7 +9131,7 @@ pub const tc_iflag_t = switch (native_os) { |
| 9115 | IMAXBEL: bool = false, | 9131 | IMAXBEL: bool = false, |
| 9116 | _: u18 = 0, | 9132 | _: u18 = 0, |
| 9117 | }, | 9133 | }, |
| 9118 | .haiku => packed struct(u32) { | 9134 | .haiku => packed struct(u16) { |
| 9119 | IGNBRK: bool = false, | 9135 | IGNBRK: bool = false, |
| 9120 | BRKINT: bool = false, | 9136 | BRKINT: bool = false, |
| 9121 | IGNPAR: bool = false, | 9137 | IGNPAR: bool = false, |
| ... | @@ -9129,7 +9145,7 @@ pub const tc_iflag_t = switch (native_os) { | ... | @@ -9129,7 +9145,7 @@ pub const tc_iflag_t = switch (native_os) { |
| 9129 | IXON: bool = false, | 9145 | IXON: bool = false, |
| 9130 | IXANY: bool = false, | 9146 | IXANY: bool = false, |
| 9131 | IXOFF: bool = false, | 9147 | IXOFF: bool = false, |
| 9132 | _: u19 = 0, | 9148 | _: u3 = 0, |
| 9133 | }, | 9149 | }, |
| 9134 | .illumos => packed struct(u32) { | 9150 | .illumos => packed struct(u32) { |
| 9135 | IGNBRK: bool = false, | 9151 | IGNBRK: bool = false, |
| ... | @@ -9243,8 +9259,24 @@ pub const tc_oflag_t = switch (native_os) { | ... | @@ -9243,8 +9259,24 @@ pub const tc_oflag_t = switch (native_os) { |
| 9243 | WRAP: bool = false, | 9259 | WRAP: bool = false, |
| 9244 | _: u14 = 0, | 9260 | _: u14 = 0, |
| 9245 | }, | 9261 | }, |
| | 9262 | .haiku => packed struct(u16) { |
| | 9263 | OPOST: bool = false, |
| | 9264 | OLCUC: bool = false, |
| | 9265 | ONLCR: bool = false, |
| | 9266 | OCRNL: bool = false, |
| | 9267 | ONOCR: bool = false, |
| | 9268 | ONLRET: bool = false, |
| | 9269 | OFILL: bool = false, |
| | 9270 | OFDEL: bool = false, |
| | 9271 | NLDLY: u1 = 0, |
| | 9272 | CRDLY: u2 = 0, |
| | 9273 | TABDLY: u2 = 0, |
| | 9274 | BSDLY: u1 = 0, |
| | 9275 | VTDLY: u1 = 0, |
| | 9276 | FFDLY: u1 = 0, |
| | 9277 | }, |
| 9246 | // https://github.com/SerenityOS/serenity/blob/d277cdfd4c7ed21d5248a83217ae03b9f890c3c8/Kernel/API/POSIX/termios.h#L69-L97 | 9278 | // https://github.com/SerenityOS/serenity/blob/d277cdfd4c7ed21d5248a83217ae03b9f890c3c8/Kernel/API/POSIX/termios.h#L69-L97 |
| 9247 | .haiku, .emscripten, .serenity => packed struct(u32) { | 9279 | .emscripten, .serenity => packed struct(u32) { |
| 9248 | OPOST: bool = false, | 9280 | OPOST: bool = false, |
| 9249 | OLCUC: bool = false, | 9281 | OLCUC: bool = false, |
| 9250 | ONLCR: bool = false, | 9282 | ONLCR: bool = false, |
| ... | @@ -9357,7 +9389,7 @@ pub const tc_cflag_t = switch (native_os) { | ... | @@ -9357,7 +9389,7 @@ pub const tc_cflag_t = switch (native_os) { |
| 9357 | MDMBUF: bool = false, | 9389 | MDMBUF: bool = false, |
| 9358 | _: u11 = 0, | 9390 | _: u11 = 0, |
| 9359 | }, | 9391 | }, |
| 9360 | .haiku => packed struct(u32) { | 9392 | .haiku => packed struct(u16) { |
| 9361 | _0: u5 = 0, | 9393 | _0: u5 = 0, |
| 9362 | CSIZE: CSIZE = .CS7, | 9394 | CSIZE: CSIZE = .CS7, |
| 9363 | CSTOPB: bool = false, | 9395 | CSTOPB: bool = false, |
| ... | @@ -9369,7 +9401,7 @@ pub const tc_cflag_t = switch (native_os) { | ... | @@ -9369,7 +9401,7 @@ pub const tc_cflag_t = switch (native_os) { |
| 9369 | XLOBLK: bool = false, | 9401 | XLOBLK: bool = false, |
| 9370 | CTSFLOW: bool = false, | 9402 | CTSFLOW: bool = false, |
| 9371 | RTSFLOW: bool = false, | 9403 | RTSFLOW: bool = false, |
| 9372 | _: u17 = 0, | 9404 | _: u1 = 0, |
| 9373 | }, | 9405 | }, |
| 9374 | .illumos => packed struct(u32) { | 9406 | .illumos => packed struct(u32) { |
| 9375 | _0: u4 = 0, | 9407 | _0: u4 = 0, |
| ... | @@ -9491,7 +9523,7 @@ pub const tc_lflag_t = switch (native_os) { | ... | @@ -9491,7 +9523,7 @@ pub const tc_lflag_t = switch (native_os) { |
| 9491 | _30: u1 = 0, | 9523 | _30: u1 = 0, |
| 9492 | NOFLSH: bool = false, | 9524 | NOFLSH: bool = false, |
| 9493 | }, | 9525 | }, |
| 9494 | .haiku => packed struct(u32) { | 9526 | .haiku => packed struct(u16) { |
| 9495 | ISIG: bool = false, | 9527 | ISIG: bool = false, |
| 9496 | ICANON: bool = false, | 9528 | ICANON: bool = false, |
| 9497 | XCASE: bool = false, | 9529 | XCASE: bool = false, |
| ... | @@ -9507,7 +9539,7 @@ pub const tc_lflag_t = switch (native_os) { | ... | @@ -9507,7 +9539,7 @@ pub const tc_lflag_t = switch (native_os) { |
| 9507 | ECHOKE: bool = false, | 9539 | ECHOKE: bool = false, |
| 9508 | FLUSHO: bool = false, | 9540 | FLUSHO: bool = false, |
| 9509 | PENDIN: bool = false, | 9541 | PENDIN: bool = false, |
| 9510 | _: u17 = 0, | 9542 | _: u1 = 0, |
| 9511 | }, | 9543 | }, |
| 9512 | .illumos => packed struct(u32) { | 9544 | .illumos => packed struct(u32) { |
| 9513 | ISIG: bool = false, | 9545 | ISIG: bool = false, |
| ... | @@ -9568,7 +9600,7 @@ pub const tc_lflag_t = switch (native_os) { | ... | @@ -9568,7 +9600,7 @@ pub const tc_lflag_t = switch (native_os) { |
| 9568 | | 9600 | |
| 9569 | pub const speed_t = switch (native_os) { | 9601 | pub const speed_t = switch (native_os) { |
| 9570 | .linux => linux.speed_t, | 9602 | .linux => linux.speed_t, |
| 9571 | .driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos, .openbsd => enum(u64) { | 9603 | .driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos, .openbsd => enum(if (native_os == .openbsd) c_uint else u64) { |
| 9572 | B0 = 0, | 9604 | B0 = 0, |
| 9573 | B50 = 50, | 9605 | B50 = 50, |
| 9574 | B75 = 75, | 9606 | B75 = 75, |
| ... | @@ -9780,7 +9812,7 @@ pub const MINSIGSTKSZ = switch (native_os) { | ... | @@ -9780,7 +9812,7 @@ pub const MINSIGSTKSZ = switch (native_os) { |
| 9780 | }, | 9812 | }, |
| 9781 | .illumos => 2048, | 9813 | .illumos => 2048, |
| 9782 | .haiku, .netbsd => 8192, | 9814 | .haiku, .netbsd => 8192, |
| 9783 | .openbsd => 1 << openbsd.MAX_PAGE_SHIFT, | 9815 | .openbsd => 3 << openbsd.MAX_PAGE_SHIFT, |
| 9784 | // https://github.com/SerenityOS/serenity/blob/ec492a1a0819e6239ea44156825c4ee7234ca3db/Kernel/API/POSIX/signal.h#L58 | 9816 | // https://github.com/SerenityOS/serenity/blob/ec492a1a0819e6239ea44156825c4ee7234ca3db/Kernel/API/POSIX/signal.h#L58 |
| 9785 | .serenity => 4096, | 9817 | .serenity => 4096, |
| 9786 | else => {}, | 9818 | else => {}, |
| ... | @@ -9790,7 +9822,7 @@ pub const SIGSTKSZ = switch (native_os) { | ... | @@ -9790,7 +9822,7 @@ pub const SIGSTKSZ = switch (native_os) { |
| 9790 | .netbsd, .freebsd => MINSIGSTKSZ + 32768, | 9822 | .netbsd, .freebsd => MINSIGSTKSZ + 32768, |
| 9791 | .illumos => 8192, | 9823 | .illumos => 8192, |
| 9792 | .haiku => 16384, | 9824 | .haiku => 16384, |
| 9793 | .openbsd => MINSIGSTKSZ + (1 << openbsd.MAX_PAGE_SHIFT) * 4, | 9825 | .openbsd => MINSIGSTKSZ + (1 << openbsd.MAX_PAGE_SHIFT) * (if (openbsd.MAX_PAGE_SHIFT < 14) 4 else 2), |
| 9794 | // https://github.com/SerenityOS/serenity/blob/ec492a1a0819e6239ea44156825c4ee7234ca3db/Kernel/API/POSIX/signal.h#L59 | 9826 | // https://github.com/SerenityOS/serenity/blob/ec492a1a0819e6239ea44156825c4ee7234ca3db/Kernel/API/POSIX/signal.h#L59 |
| 9795 | .serenity => 32768, | 9827 | .serenity => 32768, |
| 9796 | else => {}, | 9828 | else => {}, |
| ... | @@ -10845,7 +10877,7 @@ pub const malloc_size = switch (native_os) { | ... | @@ -10845,7 +10877,7 @@ pub const malloc_size = switch (native_os) { |
| 10845 | else => {}, | 10877 | else => {}, |
| 10846 | }; | 10878 | }; |
| 10847 | pub const malloc_usable_size = switch (native_os) { | 10879 | pub const malloc_usable_size = switch (native_os) { |
| 10848 | .freebsd, .linux, .serenity => private.malloc_usable_size, | 10880 | .freebsd, .linux => private.malloc_usable_size, |
| 10849 | else => {}, | 10881 | else => {}, |
| 10850 | }; | 10882 | }; |
| 10851 | pub const posix_memalign = switch (native_os) { | 10883 | pub const posix_memalign = switch (native_os) { |
| ... | @@ -10906,7 +10938,10 @@ pub extern "c" fn write(fd: fd_t, buf: [*]const u8, nbyte: usize) isize; | ... | @@ -10906,7 +10938,10 @@ pub extern "c" fn write(fd: fd_t, buf: [*]const u8, nbyte: usize) isize; |
| 10906 | pub extern "c" fn pwrite(fd: fd_t, buf: [*]const u8, nbyte: usize, offset: off_t) isize; | 10938 | pub extern "c" fn pwrite(fd: fd_t, buf: [*]const u8, nbyte: usize, offset: off_t) isize; |
| 10907 | pub extern "c" fn mmap(addr: ?*align(page_size) anyopaque, len: usize, prot: PROT, flags: MAP, fd: fd_t, offset: off_t) *anyopaque; | 10939 | pub extern "c" fn mmap(addr: ?*align(page_size) anyopaque, len: usize, prot: PROT, flags: MAP, fd: fd_t, offset: off_t) *anyopaque; |
| 10908 | pub extern "c" fn munmap(addr: *align(page_size) const anyopaque, len: usize) c_int; | 10940 | pub extern "c" fn munmap(addr: *align(page_size) const anyopaque, len: usize) c_int; |
| 10909 | pub extern "c" fn mremap(addr: ?*align(page_size) const anyopaque, old_len: usize, new_len: usize, flags: MREMAP, ...) *anyopaque; | 10941 | pub const mremap = switch (native_os) { |
| | 10942 | .serenity => serenity.mremap, |
| | 10943 | else => private.mremap, |
| | 10944 | }; |
| 10910 | pub extern "c" fn mprotect(addr: *align(page_size) anyopaque, len: usize, prot: PROT) c_int; | 10945 | pub extern "c" fn mprotect(addr: *align(page_size) anyopaque, len: usize, prot: PROT) c_int; |
| 10911 | pub extern "c" fn link(oldpath: [*:0]const u8, newpath: [*:0]const u8) c_int; | 10946 | pub extern "c" fn link(oldpath: [*:0]const u8, newpath: [*:0]const u8) c_int; |
| 10912 | pub extern "c" fn linkat(oldfd: fd_t, oldpath: [*:0]const u8, newfd: fd_t, newpath: [*:0]const u8, flags: c_uint) c_int; | 10947 | pub extern "c" fn linkat(oldfd: fd_t, oldpath: [*:0]const u8, newfd: fd_t, newpath: [*:0]const u8, flags: c_uint) c_int; |
| ... | @@ -10999,7 +11034,10 @@ pub extern "c" fn sendto( | ... | @@ -10999,7 +11034,10 @@ pub extern "c" fn sendto( |
| 10999 | addrlen: socklen_t, | 11034 | addrlen: socklen_t, |
| 11000 | ) isize; | 11035 | ) isize; |
| 11001 | pub extern "c" fn sendmsg(sockfd: fd_t, msg: *const msghdr_const, flags: u32) isize; | 11036 | pub extern "c" fn sendmsg(sockfd: fd_t, msg: *const msghdr_const, flags: u32) isize; |
| 11002 | pub extern "c" fn sendmmsg(sockfd: fd_t, msgvec: [*]mmsghdr, n: c_uint, flags: u32) c_int; | 11037 | pub const sendmmsg = switch (native_os) { |
| | 11038 | .freebsd => freebsd.sendmmsg, |
| | 11039 | else => private.sendmmsg, |
| | 11040 | }; |
| 11003 | | 11041 | |
| 11004 | pub extern "c" fn recv( | 11042 | pub extern "c" fn recv( |
| 11005 | sockfd: fd_t, | 11043 | sockfd: fd_t, |
| ... | @@ -11061,6 +11099,10 @@ pub const pthread_cancelstate = switch (native_os) { | ... | @@ -11061,6 +11099,10 @@ pub const pthread_cancelstate = switch (native_os) { |
| 11061 | ENABLE = 1, | 11099 | ENABLE = 1, |
| 11062 | DISABLE = 0, | 11100 | DISABLE = 0, |
| 11063 | }, | 11101 | }, |
| | 11102 | .dragonfly, .freebsd, .haiku, .openbsd => enum(c_int) { |
| | 11103 | ENABLE = 0, |
| | 11104 | DISABLE = 1, |
| | 11105 | }, |
| 11064 | .linux => if (native_abi.isMusl()) enum(c_int) { | 11106 | .linux => if (native_abi.isMusl()) enum(c_int) { |
| 11065 | ENABLE = 0, | 11107 | ENABLE = 0, |
| 11066 | DISABLE = 1, | 11108 | DISABLE = 1, |
| ... | @@ -11069,6 +11111,10 @@ pub const pthread_cancelstate = switch (native_os) { | ... | @@ -11069,6 +11111,10 @@ pub const pthread_cancelstate = switch (native_os) { |
| 11069 | ENABLE = 0, | 11111 | ENABLE = 0, |
| 11070 | DISABLE = 1, | 11112 | DISABLE = 1, |
| 11071 | }, | 11113 | }, |
| | 11114 | .serenity => enum(c_int) { |
| | 11115 | ENABLE = 1, |
| | 11116 | DISABLE = 2, |
| | 11117 | }, |
| 11072 | else => void, | 11118 | else => void, |
| 11073 | }; | 11119 | }; |
| 11074 | pub extern "c" fn pthread_setcancelstate(pthread_cancelstate, ?*pthread_cancelstate) E; | 11120 | pub extern "c" fn pthread_setcancelstate(pthread_cancelstate, ?*pthread_cancelstate) E; |
| ... | @@ -11124,7 +11170,7 @@ pub const ptrace = switch (native_os) { | ... | @@ -11124,7 +11170,7 @@ pub const ptrace = switch (native_os) { |
| 11124 | | 11170 | |
| 11125 | pub extern "c" fn sem_init(sem: *sem_t, pshared: c_int, value: c_uint) c_int; | 11171 | pub extern "c" fn sem_init(sem: *sem_t, pshared: c_int, value: c_uint) c_int; |
| 11126 | pub extern "c" fn sem_destroy(sem: *sem_t) c_int; | 11172 | pub extern "c" fn sem_destroy(sem: *sem_t) c_int; |
| 11127 | pub extern "c" fn sem_open(name: [*:0]const u8, flag: c_int, mode: mode_t, value: c_uint) *sem_t; | 11173 | pub extern "c" fn sem_open(name: [*:0]const u8, flag: c_int, ...) *sem_t; |
| 11128 | pub extern "c" fn sem_close(sem: *sem_t) c_int; | 11174 | pub extern "c" fn sem_close(sem: *sem_t) c_int; |
| 11129 | pub extern "c" fn sem_post(sem: *sem_t) c_int; | 11175 | pub extern "c" fn sem_post(sem: *sem_t) c_int; |
| 11130 | pub extern "c" fn sem_wait(sem: *sem_t) c_int; | 11176 | pub extern "c" fn sem_wait(sem: *sem_t) c_int; |
| ... | @@ -11186,15 +11232,12 @@ pub extern "c" fn getaddrinfo( | ... | @@ -11186,15 +11232,12 @@ pub extern "c" fn getaddrinfo( |
| 11186 | | 11232 | |
| 11187 | pub extern "c" fn freeaddrinfo(res: *addrinfo) void; | 11233 | pub extern "c" fn freeaddrinfo(res: *addrinfo) void; |
| 11188 | | 11234 | |
| 11189 | pub extern "c" fn getnameinfo( | 11235 | pub const getnameinfo = switch (native_os) { |
| 11190 | noalias addr: *const sockaddr, | 11236 | .dragonfly => dragonfly.getnameinfo, |
| 11191 | addrlen: socklen_t, | 11237 | .freebsd => freebsd.getnameinfo, |
| 11192 | noalias host: ?[*]u8, | 11238 | .openbsd => openbsd.getnameinfo, |
| 11193 | hostlen: socklen_t, | 11239 | else => private.getnameinfo, |
| 11194 | noalias serv: ?[*]u8, | 11240 | }; |
| 11195 | servlen: socklen_t, | | |
| 11196 | flags: NI, | | |
| 11197 | ) EAI; | | |
| 11198 | | 11241 | |
| 11199 | pub extern "c" fn gai_strerror(errcode: EAI) [*:0]const u8; | 11242 | pub extern "c" fn gai_strerror(errcode: EAI) [*:0]const u8; |
| 11200 | | 11243 | |
| ... | @@ -11283,21 +11326,44 @@ pub extern "c" fn setsid() pid_t; | ... | @@ -11283,21 +11326,44 @@ pub extern "c" fn setsid() pid_t; |
| 11283 | /// These are implementation defined but share identical values in at least musl and glibc: | 11326 | /// These are implementation defined but share identical values in at least musl and glibc: |
| 11284 | /// - https://git.musl-libc.org/cgit/musl/tree/include/locale.h?id=ab31e9d6a0fa7c5c408856c89df2dfb12c344039#n18 | 11327 | /// - https://git.musl-libc.org/cgit/musl/tree/include/locale.h?id=ab31e9d6a0fa7c5c408856c89df2dfb12c344039#n18 |
| 11285 | /// - https://sourceware.org/git/?p=glibc.git;a=blob;f=locale/bits/locale.h;h=0fcbb66114be5fef0577dc9047256eb508c45919;hb=c90cfce849d010474e8cccf3e5bff49a2c8b141f#l26 | 11328 | /// - https://sourceware.org/git/?p=glibc.git;a=blob;f=locale/bits/locale.h;h=0fcbb66114be5fef0577dc9047256eb508c45919;hb=c90cfce849d010474e8cccf3e5bff49a2c8b141f#l26 |
| 11286 | pub const LC = enum(c_int) { | 11329 | pub const LC = switch (native_os) { |
| 11287 | CTYPE = 0, | 11330 | // https://github.com/SerenityOS/serenity/blob/fe4f3879551f2fdd8a24de06b88f4450e2f3b93d/Userland/Libraries/LibC/locale.h#L14-L29 |
| 11288 | NUMERIC = 1, | 11331 | .serenity => enum(c_int) { |
| 11289 | TIME = 2, | 11332 | ALL = 0, |
| 11290 | COLLATE = 3, | 11333 | COLLATE = 1, |
| 11291 | MONETARY = 4, | 11334 | CTYPE = 2, |
| 11292 | MESSAGES = 5, | 11335 | MONETARY = 3, |
| 11293 | ALL = 6, | 11336 | NUMERIC = 4, |
| 11294 | PAPER = 7, | 11337 | TIME = 5, |
| 11295 | NAME = 8, | 11338 | MESSAGES = 6, |
| 11296 | ADDRESS = 9, | 11339 | _, |
| 11297 | TELEPHONE = 10, | 11340 | }, |
| 11298 | MEASUREMENT = 11, | 11341 | .serenity => enum(c_int) { |
| 11299 | IDENTIFICATION = 12, | 11342 | ALL = 0, |
| 11300 | _, | 11343 | NUMERIC = 1, |
| | 11344 | CTYPE = 2, |
| | 11345 | COLLATE = 3, |
| | 11346 | TIME = 4, |
| | 11347 | MONETARY = 5, |
| | 11348 | MESSAGES = 6, |
| | 11349 | _, |
| | 11350 | }, |
| | 11351 | else => enum(c_int) { |
| | 11352 | CTYPE = 0, |
| | 11353 | NUMERIC = 1, |
| | 11354 | TIME = 2, |
| | 11355 | COLLATE = 3, |
| | 11356 | MONETARY = 4, |
| | 11357 | MESSAGES = 5, |
| | 11358 | ALL = 6, |
| | 11359 | PAPER = 7, |
| | 11360 | NAME = 8, |
| | 11361 | ADDRESS = 9, |
| | 11362 | TELEPHONE = 10, |
| | 11363 | MEASUREMENT = 11, |
| | 11364 | IDENTIFICATION = 12, |
| | 11365 | _, |
| | 11366 | }, |
| 11301 | }; | 11367 | }; |
| 11302 | | 11368 | |
| 11303 | pub extern "c" fn setlocale(category: LC, locale: ?[*:0]const u8) ?[*:0]const u8; | 11369 | pub extern "c" fn setlocale(category: LC, locale: ?[*:0]const u8) ?[*:0]const u8; |
| ... | @@ -11364,6 +11430,9 @@ pub const clock_nanosleep = switch (native_os) { | ... | @@ -11364,6 +11430,9 @@ pub const clock_nanosleep = switch (native_os) { |
| 11364 | }; | 11430 | }; |
| 11365 | | 11431 | |
| 11366 | pub const ioctl = switch (native_os) { | 11432 | pub const ioctl = switch (native_os) { |
| | 11433 | .dragonfly => dragonfly.ioctl, |
| | 11434 | .freebsd => freebsd.ioctl, |
| | 11435 | .openbsd => openbsd.ioctl, |
| 11367 | .windows => {}, | 11436 | .windows => {}, |
| 11368 | else => private.ioctl, | 11437 | else => private.ioctl, |
| 11369 | }; | 11438 | }; |
| ... | @@ -11823,7 +11892,7 @@ const private = struct { | ... | @@ -11823,7 +11892,7 @@ const private = struct { |
| 11823 | extern "c" fn fork() c_int; | 11892 | extern "c" fn fork() c_int; |
| 11824 | extern "c" fn fstat(fd: fd_t, buf: *Stat) c_int; | 11893 | extern "c" fn fstat(fd: fd_t, buf: *Stat) c_int; |
| 11825 | extern "c" fn fstatat(dirfd: fd_t, path: [*:0]const u8, buf: *Stat, flag: u32) c_int; | 11894 | extern "c" fn fstatat(dirfd: fd_t, path: [*:0]const u8, buf: *Stat, flag: u32) c_int; |
| 11826 | extern "c" fn getdirentries(fd: fd_t, buf_ptr: [*]u8, nbytes: usize, basep: *i64) isize; | 11895 | extern "c" fn getdirentries(fd: fd_t, buf_ptr: [*]u8, nbytes: usize, basep: *i64) if (native_os == .dragonfly) c_int else isize; |
| 11827 | extern "c" fn getdents(fd: c_int, buf_ptr: [*]u8, nbytes: usize) switch (native_os) { | 11896 | extern "c" fn getdents(fd: c_int, buf_ptr: [*]u8, nbytes: usize) switch (native_os) { |
| 11828 | else => c_int, | 11897 | else => c_int, |
| 11829 | .freebsd => isize, | 11898 | .freebsd => isize, |
| ... | @@ -11833,13 +11902,24 @@ const private = struct { | ... | @@ -11833,13 +11902,24 @@ const private = struct { |
| 11833 | extern "c" fn gettimeofday(noalias tv: ?*timeval, noalias tz: ?*timezone) c_int; | 11902 | extern "c" fn gettimeofday(noalias tv: ?*timeval, noalias tz: ?*timezone) c_int; |
| 11834 | extern "c" fn ioctl(fd: fd_t, request: c_int, ...) c_int; | 11903 | extern "c" fn ioctl(fd: fd_t, request: c_int, ...) c_int; |
| 11835 | extern "c" fn msync(addr: *align(page_size) const anyopaque, len: usize, flags: c_int) c_int; | 11904 | extern "c" fn msync(addr: *align(page_size) const anyopaque, len: usize, flags: c_int) c_int; |
| | 11905 | extern "c" fn mremap(addr: ?*align(page_size) const anyopaque, old_len: usize, new_len: usize, flags: MREMAP, ...) *anyopaque; |
| 11836 | extern "c" fn nanosleep(rqtp: *const timespec, rmtp: ?*timespec) c_int; | 11906 | extern "c" fn nanosleep(rqtp: *const timespec, rmtp: ?*timespec) c_int; |
| 11837 | extern "c" fn pipe2(fds: *[2]fd_t, flags: O) c_int; | 11907 | extern "c" fn pipe2(fds: *[2]fd_t, flags: O) c_int; |
| 11838 | extern "c" fn readdir(dir: *DIR) ?*dirent; | 11908 | extern "c" fn readdir(dir: *DIR) ?*dirent; |
| 11839 | extern "c" fn realpath(noalias file_name: [*:0]const u8, noalias resolved_name: [*]u8) ?[*:0]u8; | 11909 | extern "c" fn realpath(noalias file_name: [*:0]const u8, noalias resolved_name: [*]u8) ?[*:0]u8; |
| 11840 | extern "c" fn recvmsg(sockfd: fd_t, msg: *msghdr, flags: u32) isize; | 11910 | extern "c" fn recvmsg(sockfd: fd_t, msg: *msghdr, flags: u32) isize; |
| 11841 | extern "c" fn sched_yield() c_int; | 11911 | extern "c" fn sched_yield() c_int; |
| | 11912 | extern "c" fn getnameinfo( |
| | 11913 | noalias addr: *const sockaddr, |
| | 11914 | addrlen: socklen_t, |
| | 11915 | noalias host: ?[*]u8, |
| | 11916 | hostlen: socklen_t, |
| | 11917 | noalias serv: ?[*]u8, |
| | 11918 | servlen: socklen_t, |
| | 11919 | flags: NI, |
| | 11920 | ) EAI; |
| 11842 | extern "c" fn sendfile(out_fd: fd_t, in_fd: fd_t, offset: ?*off_t, count: usize) isize; | 11921 | extern "c" fn sendfile(out_fd: fd_t, in_fd: fd_t, offset: ?*off_t, count: usize) isize; |
| | 11922 | extern "c" fn sendmmsg(sockfd: fd_t, msgvec: [*]mmsghdr, n: c_uint, flags: u32) c_int; |
| 11843 | extern "c" fn sigaction(sig: SIG, noalias act: ?*const Sigaction, noalias oact: ?*Sigaction) c_int; | 11923 | extern "c" fn sigaction(sig: SIG, noalias act: ?*const Sigaction, noalias oact: ?*Sigaction) c_int; |
| 11844 | extern "c" fn sigdelset(set: ?*sigset_t, signo: SIG) c_int; | 11924 | extern "c" fn sigdelset(set: ?*sigset_t, signo: SIG) c_int; |
| 11845 | extern "c" fn sigaddset(set: ?*sigset_t, signo: SIG) c_int; | 11925 | extern "c" fn sigaddset(set: ?*sigset_t, signo: SIG) c_int; |