summaryrefslogtreecommitdiff
path: root/include/lib/stdlib
diff options
context:
space:
mode:
authorAntonio Nino Diaz <antonio.ninodiaz@arm.com>2017-01-16 13:25:38 +0000
committerAntonio Nino Diaz <antonio.ninodiaz@arm.com>2017-01-24 14:42:12 +0000
commitaa050a7bdb943ca94ab914f2a9dc508e09a57431 (patch)
tree5a97cdc90d14dcfca121ba20ae5c97f92324231e /include/lib/stdlib
parent34438669d41a648e4dcf6fd93e1a1f1f7eee0482 (diff)
stdlib: Import timingsafe_bcmp() from FreeBSD
Some side-channel attacks involve an attacker inferring something from the time taken for a memory compare operation to complete, for example when comparing hashes during image authentication. To mitigate this, timingsafe_bcmp() must be used for such operations instead of the standard memcmp(). This function executes in constant time and so doesn't leak any timing information to the caller. Change-Id: I470a723dc3626a0ee6d5e3f7fd48d0a57b8aa5fd Signed-off-by: dp-arm <dimitris.papastamos@arm.com> Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
Diffstat (limited to 'include/lib/stdlib')
-rw-r--r--include/lib/stdlib/string.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/lib/stdlib/string.h b/include/lib/stdlib/string.h
index 9beeb448..902d9c13 100644
--- a/include/lib/stdlib/string.h
+++ b/include/lib/stdlib/string.h
@@ -61,6 +61,7 @@ size_t strlen(const char *) __pure;
int strncmp(const char *, const char *, size_t) __pure;
size_t strnlen(const char *, size_t) __pure;
int strcasecmp(const char *, const char *);
+int timingsafe_bcmp(const void *, const void *, size_t);
__END_DECLS