Fix off-by-one errors in ssl_cipher_get_evp()

In the ssl_cipher_get_evp() function, fix off-by-one errors in index validation before accessing arrays.

PR#3375
This commit is contained in:
Kurt Cancemi 2014-06-04 03:59:58 -04:00 committed by Matt Caswell
parent d663f506dc
commit 7e98378d15

View File

@ -531,7 +531,7 @@ int ssl_cipher_get_evp(const SSL_SESSION *s, const EVP_CIPHER **enc,
break; break;
} }
if ((i < 0) || (i > SSL_ENC_NUM_IDX)) if ((i < 0) || (i >= SSL_ENC_NUM_IDX))
*enc=NULL; *enc=NULL;
else else
{ {
@ -559,7 +559,7 @@ int ssl_cipher_get_evp(const SSL_SESSION *s, const EVP_CIPHER **enc,
i= -1; i= -1;
break; break;
} }
if ((i < 0) || (i > SSL_MD_NUM_IDX)) if ((i < 0) || (i >= SSL_MD_NUM_IDX))
{ {
*md=NULL; *md=NULL;
if (mac_pkey_type!=NULL) *mac_pkey_type = NID_undef; if (mac_pkey_type!=NULL) *mac_pkey_type = NID_undef;