GH102: Add volatile to CRYPTO_memcmp
Can't hurt and seems to prevent problems from some over-aggressive
(LTO?) compilers.
Reviewed-by: Richard Levitte <levitte@openssl.org>
(cherry picked from commit 98ab57644f
)
This commit is contained in:
@@ -1016,11 +1016,11 @@ void *OPENSSL_stderr(void)
|
|||||||
return stderr;
|
return stderr;
|
||||||
}
|
}
|
||||||
|
|
||||||
int CRYPTO_memcmp(const void *in_a, const void *in_b, size_t len)
|
int CRYPTO_memcmp(const volatile void *in_a, const volatile void *in_b, size_t len)
|
||||||
{
|
{
|
||||||
size_t i;
|
size_t i;
|
||||||
const unsigned char *a = in_a;
|
const volatile unsigned char *a = in_a;
|
||||||
const unsigned char *b = in_b;
|
const volatile unsigned char *b = in_b;
|
||||||
unsigned char x = 0;
|
unsigned char x = 0;
|
||||||
|
|
||||||
for (i = 0; i < len; i++)
|
for (i = 0; i < len; i++)
|
||||||
|
@@ -628,7 +628,7 @@ void OPENSSL_init(void);
|
|||||||
* into a defined order as the return value when a != b is undefined, other
|
* into a defined order as the return value when a != b is undefined, other
|
||||||
* than to be non-zero.
|
* than to be non-zero.
|
||||||
*/
|
*/
|
||||||
int CRYPTO_memcmp(const void *a, const void *b, size_t len);
|
int CRYPTO_memcmp(const volatile void *a, const volatile void *b, size_t len);
|
||||||
|
|
||||||
/* BEGIN ERROR CODES */
|
/* BEGIN ERROR CODES */
|
||||||
/*
|
/*
|
||||||
|
Reference in New Issue
Block a user