Skip to content

Commit 3f9f49a

Browse files
committed
add fmemopen, open_memstream, and open_wmemstream for POSIX.1-2008
Skip test on aarch64 due to #1765
1 parent c9ff3e9 commit 3f9f49a

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

libc-test/build.rs

100644100755
+2-1
Original file line numberDiff line numberDiff line change
@@ -1592,7 +1592,8 @@ fn test_android(target: &str) {
15921592
// https://github.com/rust-lang/libc/issues/1765
15931593
"lockf" | "preadv64" | "pwritev64" | "openpty" | "forkpty"
15941594
| "login_tty" | "getifaddrs" | "freeifaddrs" | "sethostname"
1595-
| "getgrgid_r" | "getgrnam_r" | "sigtimedwait"
1595+
| "getgrgid_r" | "getgrnam_r" | "sigtimedwait" | "fmemopen"
1596+
| "open_memstream" | "open_wmemstream"
15961597
if aarch64 =>
15971598
{
15981599
true

src/unix/mod.rs

+13
Original file line numberDiff line numberDiff line change
@@ -419,6 +419,19 @@ extern "C" {
419419
mode: *const c_char,
420420
file: *mut FILE,
421421
) -> *mut FILE;
422+
pub fn fmemopen(
423+
buf: *mut c_void,
424+
size: size_t,
425+
mode: *const c_char,
426+
) -> *mut FILE;
427+
pub fn open_memstream(
428+
ptr: *mut *mut c_char,
429+
sizeloc: *mut size_t,
430+
) -> *mut FILE;
431+
pub fn open_wmemstream(
432+
ptr: *mut *mut wchar_t,
433+
sizeloc: *mut size_t,
434+
) -> *mut FILE;
422435
pub fn fflush(file: *mut FILE) -> c_int;
423436
pub fn fclose(file: *mut FILE) -> c_int;
424437
pub fn remove(filename: *const c_char) -> c_int;

0 commit comments

Comments
 (0)