Stream reassembly / app layer: disable gap errors

Gap errors on the app layer are now silently handled. No longer printed
to the screen.
remotes/origin/master-1.2.x
Victor Julien 14 years ago
parent 425294f912
commit 45d86ff58a

@ -845,10 +845,10 @@ int AppLayerParse(void *local_data, Flow *f, uint8_t proto,
/* Used only if it's TCP */ /* Used only if it's TCP */
ssn = f->protoctx; ssn = f->protoctx;
/** Do this check before calling AppLayerParse */ /* Do this check before calling AppLayerParse */
if (flags & STREAM_GAP) { if (flags & STREAM_GAP) {
SCLogDebug("stream gap detected (missing packets), this is not yet supported."); SCLogDebug("stream gap detected (missing packets), this is not yet supported.");
goto error; goto gap;
} }
/* Get the parser state (if any) */ /* Get the parser state (if any) */
@ -958,18 +958,9 @@ int AppLayerParse(void *local_data, Flow *f, uint8_t proto,
} }
SCReturnInt(0); SCReturnInt(0);
error: error:
if (ssn != NULL) { if (ssn != NULL) {
#ifdef DEBUG
applayererrors++;
if (f->alproto == ALPROTO_HTTP)
applayerhttperrors++;
#endif
/* Set the no app layer inspection flag for both
* the stream in this Flow */
FlowSetSessionNoApplayerInspectionFlag(f);
AppLayerSetEOF(f);
if (FLOW_IS_IPV4(f)) { if (FLOW_IS_IPV4(f)) {
char src[16]; char src[16];
char dst[16]; char dst[16];
@ -1004,6 +995,19 @@ error:
} }
} }
gap:
if (ssn != NULL) {
#ifdef DEBUG
applayererrors++;
if (f->alproto == ALPROTO_HTTP)
applayerhttperrors++;
#endif
/* Set the no app layer inspection flag for both
* the stream in this Flow */
FlowSetSessionNoApplayerInspectionFlag(f);
AppLayerSetEOF(f);
}
SCReturnInt(-1); SCReturnInt(-1);
} }

Loading…
Cancel
Save