|
|
|
@ -1526,6 +1526,7 @@ int StreamTcpReassembleHandleSegmentUpdateACK (TcpReassemblyThreadCtx *ra_ctx,
|
|
|
|
|
/* check if we have detected the app layer protocol or not. If it has been
|
|
|
|
|
detected then, process data normally, as we have sent one smsg from
|
|
|
|
|
toserver side already to the app layer */
|
|
|
|
|
if (ssn->state <= TCP_ESTABLISHED) {
|
|
|
|
|
if (!(ssn->flags & STREAMTCP_FLAG_APPPROTO_DETECTION_COMPLETED)) {
|
|
|
|
|
/* Do not perform reassembling of data from server, until the app layer
|
|
|
|
|
proto has been detected and we have sent atleast one smsg from client
|
|
|
|
@ -1551,6 +1552,9 @@ int StreamTcpReassembleHandleSegmentUpdateACK (TcpReassemblyThreadCtx *ra_ctx,
|
|
|
|
|
ra_ctx->stream_q->flags &= ~STREAMQUEUE_FLAG_INIT;
|
|
|
|
|
ra_base_seq = stream->ra_base_seq;
|
|
|
|
|
SCLogDebug("the app layer protocol has been detected");
|
|
|
|
|
} else {
|
|
|
|
|
ra_base_seq = stream->ra_base_seq;
|
|
|
|
|
}
|
|
|
|
|
/* set the ra_bas_seq to stream->ra_base_seq as now app layer protocol
|
|
|
|
|
has been detected */
|
|
|
|
|
} else {
|
|
|
|
|