|
|
|
@ -955,6 +955,9 @@ static inline int TLSDecodeHSHelloExtensionSupportedVersions(SSLState *ssl_state
|
|
|
|
uint8_t supported_ver_len = *input;
|
|
|
|
uint8_t supported_ver_len = *input;
|
|
|
|
input += 1;
|
|
|
|
input += 1;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (supported_ver_len < 2)
|
|
|
|
|
|
|
|
goto invalid_length;
|
|
|
|
|
|
|
|
|
|
|
|
if (!(HAS_SPACE(supported_ver_len)))
|
|
|
|
if (!(HAS_SPACE(supported_ver_len)))
|
|
|
|
goto invalid_length;
|
|
|
|
goto invalid_length;
|
|
|
|
|
|
|
|
|
|
|
|
@ -1017,6 +1020,9 @@ static inline int TLSDecodeHSHelloExtensionEllipticCurves(SSLState *ssl_state,
|
|
|
|
/* coverity[tainted_data] */
|
|
|
|
/* coverity[tainted_data] */
|
|
|
|
while (ec_processed_len < elliptic_curves_len)
|
|
|
|
while (ec_processed_len < elliptic_curves_len)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!(HAS_SPACE(2)))
|
|
|
|
|
|
|
|
goto invalid_length;
|
|
|
|
|
|
|
|
|
|
|
|
uint16_t elliptic_curve = *input << 8 | *(input + 1);
|
|
|
|
uint16_t elliptic_curve = *input << 8 | *(input + 1);
|
|
|
|
input += 2;
|
|
|
|
input += 2;
|
|
|
|
|
|
|
|
|
|
|
|
|