From: Rich Salz Date: Wed, 17 Feb 2016 21:13:49 +0000 (-0500) Subject: RT4320/GH705: Fix PEM parsing bug. X-Git-Tag: OpenSSL_1_1_0-pre4~549 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=985c3146967633707f7c165df82bb0fd8f279758;p=openssl RT4320/GH705: Fix PEM parsing bug. Also removing confusing pointer-alias variable. Reviewed-by: Richard Levitte --- diff --git a/crypto/pem/pem_lib.c b/crypto/pem/pem_lib.c index a75d9acf03..e31ea03da6 100644 --- a/crypto/pem/pem_lib.c +++ b/crypto/pem/pem_lib.c @@ -489,7 +489,6 @@ int PEM_get_EVP_CIPHER_INFO(char *header, EVP_CIPHER_INFO *cipher) { const EVP_CIPHER *enc = NULL; char *dekinfostart, c; - char **header_pp = &header; cipher->cipher = NULL; if ((header == NULL) || (*header == '\0') || (*header == '\n')) @@ -536,13 +535,13 @@ int PEM_get_EVP_CIPHER_INFO(char *header, EVP_CIPHER_INFO *cipher) } *header = '\0'; cipher->cipher = enc = EVP_get_cipherbyname(dekinfostart); - *header = c; + *header++ = c; if (enc == NULL) { PEMerr(PEM_F_PEM_GET_EVP_CIPHER_INFO, PEM_R_UNSUPPORTED_ENCRYPTION); return (0); } - if (!load_iv(header_pp, &(cipher->iv[0]), EVP_CIPHER_iv_length(enc))) + if (!load_iv(&header, cipher->iv, EVP_CIPHER_iv_length(enc))) return (0); return (1);