use input stream record end for sniffer multi msg
This commit is contained in:
parent
d552390b39
commit
a4a3ebb567
@ -2634,7 +2634,8 @@ static int ProcessMessage(const byte* sslFrame, SnifferSession* session,
|
|||||||
int sslBytes, byte* data, const byte* end,char* error)
|
int sslBytes, byte* data, const byte* end,char* error)
|
||||||
{
|
{
|
||||||
const byte* sslBegin = sslFrame;
|
const byte* sslBegin = sslFrame;
|
||||||
const byte* recordEnd;
|
const byte* recordEnd; /* end of record indicator */
|
||||||
|
const byte* inRecordEnd; /* indictor from input stream not decrypt */
|
||||||
RecordLayerHeader rh;
|
RecordLayerHeader rh;
|
||||||
int rhSize = 0;
|
int rhSize = 0;
|
||||||
int ret;
|
int ret;
|
||||||
@ -2681,6 +2682,7 @@ doMessage:
|
|||||||
sslFrame += RECORD_HEADER_SZ;
|
sslFrame += RECORD_HEADER_SZ;
|
||||||
sslBytes -= RECORD_HEADER_SZ;
|
sslBytes -= RECORD_HEADER_SZ;
|
||||||
recordEnd = sslFrame + rhSize; /* may have more than one record */
|
recordEnd = sslFrame + rhSize; /* may have more than one record */
|
||||||
|
inRecordEnd = recordEnd;
|
||||||
|
|
||||||
/* decrypt if needed */
|
/* decrypt if needed */
|
||||||
if ((session->flags.side == CYASSL_SERVER_END &&
|
if ((session->flags.side == CYASSL_SERVER_END &&
|
||||||
@ -2790,6 +2792,9 @@ doPart:
|
|||||||
goto doPart;
|
goto doPart;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* back to input stream instead of potential decrypt buffer */
|
||||||
|
recordEnd = inRecordEnd;
|
||||||
|
|
||||||
/* do we have more records ? */
|
/* do we have more records ? */
|
||||||
if (recordEnd < end) {
|
if (recordEnd < end) {
|
||||||
Trace(ANOTHER_MSG_STR);
|
Trace(ANOTHER_MSG_STR);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user