The branch master has been updated
       via  98ab57644f44d2d83595c2d0f69138a284d6096b (commit)
      from  c10d1bc81cb047cbd53f8cc430632b6a4a70252d (commit)


- Log -----------------------------------------------------------------
commit 98ab57644f44d2d83595c2d0f69138a284d6096b
Author: Rich Salz <rs...@akamai.com>
Date:   Fri Jan 29 12:09:05 2016 -0500

    GH102: Add volatile to CRYPTO_memcmp
    
    Can't hurt and seems to prevent problems from some over-aggressive
    (LTO?) compilers.
    
    Reviewed-by: Richard Levitte <levi...@openssl.org>

-----------------------------------------------------------------------

Summary of changes:
 crypto/cryptlib.c        | 6 +++---
 include/openssl/crypto.h | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/crypto/cryptlib.c b/crypto/cryptlib.c
index 14a8424..9473799 100644
--- a/crypto/cryptlib.c
+++ b/crypto/cryptlib.c
@@ -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++)
diff --git a/include/openssl/crypto.h b/include/openssl/crypto.h
index 26f6c79..024f2c9 100644
--- a/include/openssl/crypto.h
+++ b/include/openssl/crypto.h
@@ -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 */
 /*
_____
openssl-commits mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits

Reply via email to