RT4320/GH705: Fix PEM parsing bug.

Also removing confusing pointer-alias variable.
Reviewed-by: Richard Levitte <levitte@openssl.org>
This commit is contained in:
Rich Salz 2016-02-17 16:13:49 -05:00 committed by Rich Salz
parent ed233db742
commit 985c314696

View file

@ -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);