Commit 98ab5764 authored by Rich Salz's avatar Rich Salz Committed by Rich Salz
Browse files

GH102: Add volatile to CRYPTO_memcmp



Can't hurt and seems to prevent problems from some over-aggressive
(LTO?) compilers.

Reviewed-by: default avatarRichard Levitte <levitte@openssl.org>
parent c10d1bc8
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -465,11 +465,11 @@ void OpenSSLDie(const char *file, int line, const char *assertion)
#endif
}

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;
    const unsigned char *a = in_a;
    const unsigned char *b = in_b;
    const volatile unsigned char *a = in_a;
    const volatile unsigned char *b = in_b;
    unsigned char x = 0;

    for (i = 0; i < len; i++)
+1 −1
Original line number Diff line number Diff line
@@ -542,7 +542,7 @@ int OPENSSL_gmtime_diff(int *pday, int *psec,
 * into a defined order as the return value when a != b is undefined, other
 * 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 */
/*