From: Joseph Sutton Date: Tue, 10 May 2022 03:57:40 +0000 (+1200) Subject: lib/util: Move memcmp_const_time() to util.c X-Git-Tag: tevent-0.13.0~459 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=87f68500ed651f393e2fc6c514ab08b561a60a9b;p=thirdparty%2Fsamba.git lib/util: Move memcmp_const_time() to util.c This allows it to be used in more places without needing to introduce more dependencies. Signed-off-by: Joseph Sutton Reviewed-by: Andrew Bartlett --- diff --git a/lib/util/util.c b/lib/util/util.c index c066406d320..1cf3ff4e525 100644 --- a/lib/util/util.c +++ b/lib/util/util.c @@ -1097,6 +1097,18 @@ _PUBLIC_ size_t ascii_len_n(const char *src, size_t n) return len; } +_PUBLIC_ int memcmp_const_time(const void *s1, const void *s2, size_t n) +{ + const uint8_t *p1 = s1, *p2 = s2; + size_t i, sum = 0; + + for (i = 0; i < n; i++) { + sum |= (p1[i] ^ p2[i]); + } + + return sum != 0; +} + struct anonymous_shared_header { union { size_t length; diff --git a/lib/util/util_str.c b/lib/util/util_str.c index b5ba3fb716b..721e7cc8644 100644 --- a/lib/util/util_str.c +++ b/lib/util/util_str.c @@ -305,18 +305,6 @@ _PUBLIC_ bool set_boolean(const char *boolean_string, bool *boolean) return false; } -_PUBLIC_ int memcmp_const_time(const void *s1, const void *s2, size_t n) -{ - const uint8_t *p1 = s1, *p2 = s2; - size_t i, sum = 0; - - for (i = 0; i < n; i++) { - sum |= (p1[i] ^ p2[i]); - } - - return sum != 0; -} - _PUBLIC_ void talloc_asprintf_addbuf(char **ps, const char *fmt, ...) { va_list ap;