diff options
author | bors <bors@rust-lang.org> | 2021-09-26 04:35:41 +0000 |
---|---|---|
committer | bors <bors@rust-lang.org> | 2021-09-26 04:35:41 +0000 |
commit | 7dfced35f52516f287471f9d7f74a203d7181542 (patch) | |
tree | f346bcb8c8952e8c7ec8601c33fbe82fd8f6e5e0 | |
parent | ffcf50aacc48ee1d6324fbf69d725af5ec9bffe7 (diff) | |
parent | e20c31bccf1d2b22d54df2243c6f79b1d4d0814d (diff) | |
download | rust-libc-7dfced35f52516f287471f9d7f74a203d7181542.tar.gz |
Auto merge of #2407 - devnexen:win32_fns_upd, r=JohnTitor
windows add localtime_s/memccpy fns
-rw-r--r-- | libc-test/semver/windows-msvc.txt | 1 | ||||
-rw-r--r-- | libc-test/semver/windows.txt | 2 | ||||
-rw-r--r-- | src/windows/mod.rs | 4 | ||||
-rw-r--r-- | src/windows/msvc/mod.rs | 7 |
4 files changed, 14 insertions, 0 deletions
diff --git a/libc-test/semver/windows-msvc.txt b/libc-test/semver/windows-msvc.txt index 42dc8bede1..5b5296be3e 100644 --- a/libc-test/semver/windows-msvc.txt +++ b/libc-test/semver/windows-msvc.txt @@ -1,3 +1,4 @@ EOTHER +memccpy stricmp strnicmp diff --git a/libc-test/semver/windows.txt b/libc-test/semver/windows.txt index 259e3766ff..ade72529e2 100644 --- a/libc-test/semver/windows.txt +++ b/libc-test/semver/windows.txt @@ -178,6 +178,7 @@ creat dev_t dup dup2 +errno_t execl execle execlp @@ -239,6 +240,7 @@ isupper isxdigit labs listen +localtime_s lseek lseek64 malloc diff --git a/src/windows/mod.rs b/src/windows/mod.rs index 71af46a272..8ecff3ca7e 100644 --- a/src/windows/mod.rs +++ b/src/windows/mod.rs @@ -27,6 +27,8 @@ pub type wchar_t = u16; pub type clock_t = i32; +pub type errno_t = ::c_int; + cfg_if! { if #[cfg(all(target_arch = "x86", target_env = "gnu"))] { pub type time_t = i32; @@ -372,6 +374,8 @@ extern "C" { #[link_name = "_gmtime64_s"] pub fn gmtime_s(destTime: *mut tm, srcTime: *const time_t) -> ::c_int; + #[link_name = "_localtime64_s"] + pub fn localtime_s(tmDest: *mut tm, sourceTime: *const time_t) -> ::errno_t; #[link_name = "_time64"] pub fn time(destTime: *mut time_t) -> time_t; #[link_name = "_chmod"] diff --git a/src/windows/msvc/mod.rs b/src/windows/msvc/mod.rs index 3d71dc627e..8cdb5bb176 100644 --- a/src/windows/msvc/mod.rs +++ b/src/windows/msvc/mod.rs @@ -10,6 +10,13 @@ extern "C" { pub fn stricmp(s1: *const ::c_char, s2: *const ::c_char) -> ::c_int; #[link_name = "_strnicmp"] pub fn strnicmp(s1: *const ::c_char, s2: *const ::c_char, n: ::size_t) -> ::c_int; + #[link_name = "_memccpy"] + pub fn memccpy( + dest: *mut ::c_void, + src: *const ::c_void, + c: ::c_int, + count: ::size_t, + ) -> *mut ::c_void; } cfg_if! { |