From c17c72da8953887228c3e1a1d12123388d25da40 Mon Sep 17 00:00:00 2001 From: David Carlier Date: Sun, 11 May 2025 22:56:04 +0100 Subject: [PATCH] Adding strftime* for illumos/solaris. [ref](https://smartos.org/man/3C/strftime) [ref](https://docs.oracle.com/cd/E88353_01/html/E37843/strftime-3c.html) Fixes: #4449 --- libc-test/semver/solarish.txt | 2 ++ src/unix/solarish/mod.rs | 15 +++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/libc-test/semver/solarish.txt b/libc-test/semver/solarish.txt index f2c0f4a11e3f6..0171eafa0ac20 100644 --- a/libc-test/semver/solarish.txt +++ b/libc-test/semver/solarish.txt @@ -78,3 +78,5 @@ posix_spawnattr_setsigmask posix_spawnp recvmsg sendmsg +strftime +strftime_l diff --git a/src/unix/solarish/mod.rs b/src/unix/solarish/mod.rs index b435463818635..a957df931d990 100644 --- a/src/unix/solarish/mod.rs +++ b/src/unix/solarish/mod.rs @@ -3202,6 +3202,21 @@ extern "C" { pub fn arc4random_uniform(upper_bound: u32) -> u32; pub fn secure_getenv(name: *const c_char) -> *mut c_char; + + #[cfg_attr(target_os = "solaris", link_name = "__strftime_xpg7")] + pub fn strftime( + s: *mut c_char, + maxsize: size_t, + format: *const c_char, + timeptr: *const crate::tm, + ) -> size_t; + pub fn strftime_l( + s: *mut c_char, + maxsize: size_t, + format: *const c_char, + timeptr: *const crate::tm, + loc: crate::locale_t, + ) -> size_t; } #[link(name = "sendfile")]