git.samba.org
/
amitay
/
samba.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
| inline |
side by side
util: Add memcmp_const_time()
[amitay/samba.git]
/
lib
/
util
/
util_str.c
diff --git
a/lib/util/util_str.c
b/lib/util/util_str.c
index 673fbc7c6b5ebac23a88020eb0510afb77b1e0cd..c7d91ca3744b63aa80a13c55b72e1e2296b82f6f 100644
(file)
--- a/
lib/util/util_str.c
+++ b/
lib/util/util_str.c
@@
-333,3
+333,15
@@
_PUBLIC_ size_t utf16_len_n(const void *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;
+}