From: Victor Julien Date: Thu, 12 Oct 2017 16:19:23 +0000 (+0200) Subject: file_data: unify inspect engines X-Git-Tag: suricata-4.1.0-beta1~413 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6e65cf138ba8c4d1f65efe8564ce554efb53a132;p=thirdparty%2Fsuricata.git file_data: unify inspect engines Call HTTP from the generic file_data engine. --- diff --git a/src/detect-engine-filedata.c b/src/detect-engine-filedata.c index e36ccecb14..a9efdab3ea 100644 --- a/src/detect-engine-filedata.c +++ b/src/detect-engine-filedata.c @@ -35,6 +35,7 @@ #include "detect-engine-content-inspection.h" #include "detect-engine-prefilter.h" #include "detect-engine-filedata.h" +#include "detect-engine-hsbd.h" #include "flow-util.h" #include "util-debug.h" @@ -191,6 +192,11 @@ int DetectEngineInspectFiledata(ThreadVars *tv, uint32_t stream_start_offset = 0; const uint8_t *buffer = 0; + if (f->alproto == ALPROTO_HTTP) { + return DetectEngineInspectHttpServerBody(tv, de_ctx, det_ctx, s, + smd, f, flags, alstate, tx, tx_id); + } + FileContainer *ffc = AppLayerParserGetFiles(f->proto, f->alproto, f->alstate, flags); if (ffc == NULL) { diff --git a/src/detect-file-data.c b/src/detect-file-data.c index f0a20f3d2f..4cb4c5dcba 100644 --- a/src/detect-file-data.c +++ b/src/detect-file-data.c @@ -77,7 +77,7 @@ void DetectFiledataRegister(void) DetectAppLayerInspectEngineRegister("file_data", ALPROTO_HTTP, SIG_FLAG_TOCLIENT, HTP_RESPONSE_BODY, - DetectEngineInspectHttpServerBody); + DetectEngineInspectFiledata); DetectAppLayerInspectEngineRegister("file_data", ALPROTO_SMTP, SIG_FLAG_TOSERVER, 0, DetectEngineInspectFiledata);