When the received EC key share is malformed,
_gnutls_ecc_ansi_x962_import returns GNUTLS_E_PARSING_ERROR or
GNUTLS_E_MEMORY_ERROR, which maps to an internal_error alert. This
explicitly return GNUTLS_E_RECEIVED_ILLEGAL_PARAMETER to send
illegal_parameter instead, in compliance with the RFC.
Signed-off-by: Daiki Ueno <ueno@gnu.org>
&pub.params[ECC_X],
&pub.params[ECC_Y]);
if (ret < 0)
- return gnutls_assert_val(ret);
+ return gnutls_assert_val(
+ GNUTLS_E_RECEIVED_ILLEGAL_PARAMETER);
pub.algo = group->pk;
pub.curve = curve->id;
&pub.params[ECC_X],
&pub.params[ECC_Y]);
if (ret < 0)
- return gnutls_assert_val(ret);
+ return gnutls_assert_val(
+ GNUTLS_E_RECEIVED_ILLEGAL_PARAMETER);
pub.algo = group->pk;
pub.curve = curve->id;