summaryrefslogtreecommitdiff
path: root/src/SSL_Message.c
diff options
context:
space:
mode:
authorlishu <[email protected]>2021-08-05 17:53:56 +0800
committerlishu <[email protected]>2021-08-05 17:53:56 +0800
commit99e3b104e2027fd49ed47a243f65dca0bb17a65f (patch)
tree90167da8f6aa05e164ed8d0e757ad96756e984db /src/SSL_Message.c
parent44bcfa8f2c26050d248e195405de0a3167b214e8 (diff)
ssl2.0v2.0.4
Diffstat (limited to 'src/SSL_Message.c')
-rw-r--r--src/SSL_Message.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/SSL_Message.c b/src/SSL_Message.c
index d7062f1..4fcbc5b 100644
--- a/src/SSL_Message.c
+++ b/src/SSL_Message.c
@@ -717,11 +717,20 @@ UCHAR ssl_analyseSsl(char *pcSslData, int iDataLen, int *res, ssl_stream *a_ssl_
/**first packet of an hand shake conversation**/
if (UNKNOWN_VERSION == a_ssl_stream->uiSslVersion)
{
- a_ssl_stream->uiSslVersion = (unsigned int)ssl_protoRecg(pcSslData, iDataLen);
+ a_ssl_stream->uiSslVersion = (unsigned int)ssl_protoRecg(pcSslData, iDataLen);
+ /*jump the first pkt*/
if (UNKNOWN_VERSION == a_ssl_stream->uiSslVersion)
{
*res = -1;
- return SSL_RETURN_DROPME;
+ if(a_ssl_stream->first_pkt_flag==0)
+ {
+ a_ssl_stream->first_pkt_flag = 1;
+ return SSL_RETURN_GIVEME;
+ }
+ else
+ {
+ return SSL_RETURN_DROPME;
+ }
}
/*version callback*/
return_val = ssl_doWithVersion(&a_ssl_stream, a_tcp, region_flag, thread_seq, a_packet);