]> granicus.if.org Git - php/commitdiff
Sync with behavior change in OpenSSL 1.1.1b
authorAnatol Belski <ab@php.net>
Thu, 28 Feb 2019 11:48:47 +0000 (12:48 +0100)
committerAnatol Belski <ab@php.net>
Thu, 28 Feb 2019 11:48:47 +0000 (12:48 +0100)
A behavior change in revealed by some openssl_decrypt() based test,
where an encrypt API is used with a decrypt context. The EVP_Cipher*
functions will automatically choose the right operation depending on the
context passed.

ext/openssl/openssl.c

index 871a30c82ace7a2fa927cb37f506e25e712ee970..7df50720eb126fe5a285f6a98284e632ef94cf55 100644 (file)
@@ -6494,7 +6494,7 @@ static int php_openssl_cipher_update(const EVP_CIPHER *cipher_type,
 {
        int i = 0;
 
-       if (mode->is_single_run_aead && !EVP_EncryptUpdate(cipher_ctx, NULL, &i, NULL, (int)data_len)) {
+       if (mode->is_single_run_aead && !EVP_CipherUpdate(cipher_ctx, NULL, &i, NULL, (int)data_len)) {
                php_openssl_store_errors();
                php_error_docref(NULL, E_WARNING, "Setting of data length failed");
                return FAILURE;