diff options
Diffstat (limited to 'src/SSL_Message.c')
| -rw-r--r-- | src/SSL_Message.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/SSL_Message.c b/src/SSL_Message.c index b259797..c4942f8 100644 --- a/src/SSL_Message.c +++ b/src/SSL_Message.c @@ -478,7 +478,7 @@ UCHAR ssl_analyseHandShake(char *pcSslData, int iAllMsgLen, int iSslUnAnalyseL a_ssl_stream->stServerHello->exts[i].len = (unsigned short)BtoL2BytesNum(pcCurSslData); pcCurSslData += sizeof(a_ssl_stream->stServerHello->exts[i].len); iUnAnaHelloLen -= sizeof(a_ssl_stream->stServerHello->exts[i].len); - if(iUnAnaHelloLen<0) + if(iUnAnaHelloLen<0 || a_ssl_stream->stServerHello->exts[i].len>iUnAnaHelloLen) { return SSL_RETURN_DROPME; } |
