Skip to content

Commit 29b1cea

Browse files
committed
Added strnlen function to all platforms.
strnlen is used to find the length of a C string that may be lacking a terminal NUL character. Whilst it is possible to implement the equivalent functionality in rust code, it is cleaner, simpler and removes the need for duplication of tricky functionality to get right. It also makes it easier to port C code snippets to rust. Note that strnlen is not part of POSIX or C99.
1 parent 8adb9c5 commit 29b1cea

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

src/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -232,6 +232,7 @@ extern {
232232
pub fn strpbrk(cs: *const c_char, ct: *const c_char) -> *mut c_char;
233233
pub fn strstr(cs: *const c_char, ct: *const c_char) -> *mut c_char;
234234
pub fn strlen(cs: *const c_char) -> size_t;
235+
pub fn strnlen(cs: *const c_char, maxlen: size_t) -> size_t;
235236
#[cfg_attr(all(target_os = "macos", target_arch = "x86"),
236237
link_name = "strerror$UNIX2003")]
237238
pub fn strerror(n: c_int) -> *mut c_char;

0 commit comments

Comments
 (0)