Fix potential null pointer dereference in ARIA implementation
authorJon Spillett <jon.spillett@oracle.com>
Wed, 30 Aug 2017 04:04:08 +0000 (14:04 +1000)
committerJon Spillett <jon.spillett@oracle.com>
Wed, 30 Aug 2017 04:04:08 +0000 (14:04 +1000)
Reviewed-by: Paul Dale <paul.dale@oracle.com>
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/4286)

crypto/aria/aria.c

index a3c31d6..a1903d9 100644 (file)
@@ -542,7 +542,7 @@ int aria_set_encrypt_key(const unsigned char *userKey, const int bits,
     uint32_t w0[4], w1[4], w2[4], w3[4];
     const uint32_t *ck;
 
-    ARIA_u128 *rk = key->rd_key;
+    ARIA_u128 *rk;
     int Nr = (bits + 256) / 32;
 
     if (userKey == NULL || key == NULL) {
@@ -552,6 +552,7 @@ int aria_set_encrypt_key(const unsigned char *userKey, const int bits,
         return -2;
     }
 
+    rk = key->rd_key;
     key->rounds = Nr;
     ck = &Key_RC[(bits - 128) / 64][0];