aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/suricata/src/detect-parse.c
diff options
context:
space:
mode:
authorAshlee Young <ashlee@wildernessvoice.com>2015-12-01 05:49:27 -0800
committerAshlee Young <ashlee@wildernessvoice.com>2015-12-01 05:49:27 -0800
commite63291850fd0795c5700e25e67e5dee89ba54c5f (patch)
tree9707289536ad95bb739c9856761ad43275e07d8c /framework/src/suricata/src/detect-parse.c
parent671823e12bc13be9a8b87a5d7de33da1bb7a44e8 (diff)
onos commit hash c2999f30c69e50df905a9d175ef80b3f23a98514
Change-Id: I2bb8562c4942b6d6a6d60b663db2e17540477b81 Signed-off-by: Ashlee Young <ashlee@wildernessvoice.com>
Diffstat (limited to 'framework/src/suricata/src/detect-parse.c')
-rw-r--r--framework/src/suricata/src/detect-parse.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/framework/src/suricata/src/detect-parse.c b/framework/src/suricata/src/detect-parse.c
index 9ac53e03..f91e7591 100644
--- a/framework/src/suricata/src/detect-parse.c
+++ b/framework/src/suricata/src/detect-parse.c
@@ -1319,6 +1319,21 @@ int SigValidate(DetectEngineCtx *de_ctx, Signature *s)
}
}
+ if (s->sm_lists[DETECT_SM_LIST_BASE64_DATA] != NULL) {
+ int list;
+ uint16_t idx = s->sm_lists[DETECT_SM_LIST_BASE64_DATA]->idx;
+ for (list = 0; list < DETECT_SM_LIST_MAX; list++) {
+ if (list != DETECT_SM_LIST_BASE64_DATA &&
+ s->sm_lists[list] != NULL) {
+ if (s->sm_lists[list]->idx > idx) {
+ SCLogError(SC_ERR_INVALID_SIGNATURE, "Rule buffer "
+ "cannot be reset after base64_data.");
+ SCReturnInt(0);
+ }
+ }
+ }
+ }
+
#ifdef HAVE_LUA
DetectLuaPostSetup(s);
#endif