diff options
-rw-r--r-- | libc-test/semver/redox.txt | 11 | ||||
-rw-r--r-- | src/unix/newlib/vita/mod.rs | 2 | ||||
-rw-r--r-- | src/unix/redox/mod.rs | 36 |
3 files changed, 47 insertions, 2 deletions
diff --git a/libc-test/semver/redox.txt b/libc-test/semver/redox.txt index 4b6e126ea6..cd07660cc4 100644 --- a/libc-test/semver/redox.txt +++ b/libc-test/semver/redox.txt @@ -137,8 +137,8 @@ SO_PEERCRED SO_PEERSEC SO_PRIORITY SO_PROTOCOL -SO_REUSEPORT SO_RCVBUFFORCE +SO_REUSEPORT SO_SNDBUFFORCE TCFLSH TCGETS @@ -180,6 +180,7 @@ bsearch chroot clearerr difftime +endpwent endservent epoll_create epoll_create1 @@ -189,12 +190,17 @@ epoll_wait explicit_bzero fchdir fmemopen +getdtablesize +getgrgid_r +getgrnam_r +getgrouplist getline +getpwent +getpwnam_r getrlimit getrusage getservbyport getservent -getdtablesize killpg lockf madvise @@ -206,6 +212,7 @@ pipe2 pthread_condattr_setclock qsort reallocarray +setpwent setrlimit setservent strcasecmp diff --git a/src/unix/newlib/vita/mod.rs b/src/unix/newlib/vita/mod.rs index 5c1d35dae1..801a408b99 100644 --- a/src/unix/newlib/vita/mod.rs +++ b/src/unix/newlib/vita/mod.rs @@ -168,6 +168,8 @@ extern "C" { ) -> ::c_int; pub fn pthread_getprocessorid_np() -> ::c_int; + + pub fn getentropy(buf: *mut ::c_void, buflen: ::size_t) -> ::c_int; } pub use crate::unix::newlib::generic::{sigset_t, stat}; diff --git a/src/unix/redox/mod.rs b/src/unix/redox/mod.rs index ccd3d779fa..d946f46524 100644 --- a/src/unix/redox/mod.rs +++ b/src/unix/redox/mod.rs @@ -528,6 +528,10 @@ pub const POLLOUT: ::c_short = 0x004; pub const POLLERR: ::c_short = 0x008; pub const POLLHUP: ::c_short = 0x010; pub const POLLNVAL: ::c_short = 0x020; +pub const POLLRDNORM: ::c_short = 0x040; +pub const POLLRDBAND: ::c_short = 0x080; +pub const POLLWRNORM: ::c_short = 0x100; +pub const POLLWRBAND: ::c_short = 0x200; // pthread.h pub const PTHREAD_MUTEX_NORMAL: ::c_int = 0; @@ -996,6 +1000,28 @@ extern "C" { pub fn pipe2(fds: *mut ::c_int, flags: ::c_int) -> ::c_int; pub fn getdtablesize() -> ::c_int; + // grp.h + pub fn getgrgid_r( + gid: ::gid_t, + grp: *mut ::group, + buf: *mut ::c_char, + buflen: ::size_t, + result: *mut *mut ::group, + ) -> ::c_int; + pub fn getgrnam_r( + name: *const ::c_char, + grp: *mut ::group, + buf: *mut ::c_char, + buflen: ::size_t, + result: *mut *mut ::group, + ) -> ::c_int; + pub fn getgrouplist( + user: *const ::c_char, + group: ::gid_t, + groups: *mut ::gid_t, + ngroups: *mut ::c_int, + ) -> ::c_int; + // malloc.h pub fn memalign(align: ::size_t, size: ::size_t) -> *mut ::c_void; @@ -1028,6 +1054,16 @@ extern "C" { ) -> ::c_int; // pwd.h + pub fn getpwent() -> *mut passwd; + pub fn setpwent(); + pub fn endpwent(); + pub fn getpwnam_r( + name: *const ::c_char, + pwd: *mut passwd, + buf: *mut ::c_char, + buflen: ::size_t, + result: *mut *mut passwd, + ) -> ::c_int; pub fn getpwuid_r( uid: ::uid_t, pwd: *mut passwd, |