/* Copyright 2019 Google LLC. All rights reserved. This file and proprietary */ /* source code may only be used and distributed under the Widevine Master */ /* License Agreement. */ #ifndef WIDEVINE_ODK_SRC_ODK_UTIL_H_ #define WIDEVINE_ODK_SRC_ODK_UTIL_H_ #include #include #include "odk_structs.h" #ifdef __cplusplus extern "C" { #endif /* crypto_memcmp returns zero iff the |len| bytes at |a| and |b| are equal. It * takes an amount of time dependent on |len|, but independent of the contents * of |a| and |b|. Unlike memcmp, it cannot be used to order elements as the * return value when a != b is undefined, other than being non-zero. */ int crypto_memcmp(const void* a, const void* b, size_t len); bool ODK_NonceValuesEqual(const ODK_NonceValues* a, const ODK_NonceValues* b); #ifdef __cplusplus } /* extern "C" */ #endif #endif /* WIDEVINE_ODK_SRC_ODK_UTIL_H_ */