diff options
author | Nick Mathewson <nickm@torproject.org> | 2014-10-13 14:59:17 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2014-10-13 14:59:17 -0400 |
commit | 21fe945ebd7183685bf5bbcd80bf6b1b946eb841 (patch) | |
tree | 0555b8b10ba62b7329e17e3431618058b8d5b9a6 | |
parent | d950e243328eaac40515b4b16ac328f6748c7a3f (diff) | |
download | tor-21fe945ebd7183685bf5bbcd80bf6b1b946eb841.tar.gz tor-21fe945ebd7183685bf5bbcd80bf6b1b946eb841.zip |
Define a strnlen replacement on platforms (win32) that lack it
Right now this is only needed for test_util_format_time_interval, so
define it as a static function. We can move it into compat later if
we need to.
-rw-r--r-- | configure.ac | 1 | ||||
-rw-r--r-- | src/test/test_util.c | 11 |
2 files changed, 12 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index c0523e1082..4c7da5d76a 100644 --- a/configure.ac +++ b/configure.ac @@ -365,6 +365,7 @@ AC_CHECK_FUNCS( socketpair \ strlcat \ strlcpy \ + strnlen \ strptime \ strtok_r \ strtoull \ diff --git a/src/test/test_util.c b/src/test/test_util.c index 8855cafc12..eb169f4dd5 100644 --- a/src/test/test_util.c +++ b/src/test/test_util.c @@ -2072,6 +2072,17 @@ test_util_sscanf(void *arg) #define tt_char_op(a,op,b) tt_assert_op_type(a,op,b,char,"%c") #define tt_ci_char_op(a,op,b) tt_char_op(tolower(a),op,tolower(b)) +#ifndef HAVE_STRNLEN +static size_t +strnlen(const char *s, size_t len) +{ + const char *p = memchr(s, 0, len); + if (!p) + return len; + return p - s; +} +#endif + static void test_util_format_time_interval(void *arg) { |