com php-src: Move overflow checks in openssl_pbkdf2: ex t/openssl/openssl.c
| From: | Jakub Zelenka | Date: | Wed, 19 Aug 2015 19:06:58 +0000 |
| Subject: | com php-src: Move overflow checks in openssl_pbkdf2: ex t/openssl/openssl.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-88692@lists.php.net to get a copy of this message | ||
Commit: 478ecc674ba801fa54d68f014cb6b7946a520eaa
Author: Jakub Zelenka <bukka@php.net> Wed, 19 Aug 2015 20:06:58 +0100
Parents: 09970d803156d74eff9f5d51f8943b7cb0425c8f
Branches: master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=478ecc674ba801fa54d68f014cb6b7946a520eaa
Log:
Move overflow checks in openssl_pbkdf2
Changed paths:
M ext/openssl/openssl.c
Diff:
diff --git a/ext/openssl/openssl.c b/ext/openssl/openssl.c
index 2876bae..938117e 100644
--- a/ext/openssl/openssl.c
+++ b/ext/openssl/openssl.c
@@ -4022,11 +4022,6 @@ PHP_FUNCTION(openssl_pbkdf2)
RETURN_FALSE;
}
- PHP_OPENSSL_CHECK_OVERFLOW(key_length, key);
- PHP_OPENSSL_CHECK_OVERFLOW(iterations, iterations);
- PHP_OPENSSL_CHECK_OVERFLOW(password_len, password);
- PHP_OPENSSL_CHECK_OVERFLOW(salt_len, salt);
-
if (method_len) {
digest = EVP_get_digestbyname(method);
} else {
@@ -4038,6 +4033,11 @@ PHP_FUNCTION(openssl_pbkdf2)
RETURN_FALSE;
}
+ PHP_OPENSSL_CHECK_OVERFLOW(key_length, key);
+ PHP_OPENSSL_CHECK_OVERFLOW(iterations, iterations);
+ PHP_OPENSSL_CHECK_OVERFLOW(password_len, password);
+ PHP_OPENSSL_CHECK_OVERFLOW(salt_len, salt);
+
out_buffer = zend_string_alloc(key_length, 0);
if (PKCS5_PBKDF2_HMAC(password, (int)password_len, (unsigned char *)salt, (int)salt_len,
(int)iterations, digest, (int)key_length, (unsigned char*)ZSTR_VAL(out_buffer)) == 1) {