summaryrefslogtreecommitdiff
path: root/src/analysis/scan/rule.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/analysis/scan/rule.h')
-rw-r--r--src/analysis/scan/rule.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/analysis/scan/rule.h b/src/analysis/scan/rule.h
index 3e6fe9d..c2c58dc 100644
--- a/src/analysis/scan/rule.h
+++ b/src/analysis/scan/rule.h
@@ -75,14 +75,20 @@ ScanRuleFlags g_scan_rule_get_flags(const GScanRule *);
/* Indique le nom associé à une règle de détection. */
const char *g_scan_rule_get_name(const GScanRule *, fnv64_t *);
+/* Lie une règle à une nouvelle étiquette. */
+void g_scan_rule_add_tag(GScanRule *, const char *);
+
+/* Indique les éventuelles étiquettes associées à une règle. */
+const char * const *g_scan_rule_list_tags(const GScanRule *, size_t *);
+
/* Intègre une nouvelle variable locale à une règle. */
void g_scan_rule_add_local_variable(GScanRule *, GSearchPattern *);
/* Fournit une variable locale à une règle selon un nom. */
-GSearchPattern *g_scan_rule_get_local_variable(GScanRule *, const char *);
+const GSearchPattern *g_scan_rule_get_local_variable(GScanRule *, const char *);
/* Fournit une liste de variables locales à partir d'un nom. */
-GSearchPattern **g_scan_rule_get_local_variables(GScanRule *, const char *, size_t *);
+const GSearchPattern **g_scan_rule_get_local_variables(GScanRule *, const char *, size_t *);
/* Définit l'expression d'une correspondance recherchée. */
void g_scan_rule_set_match_condition(GScanRule *, GScanExpression *);
@@ -90,6 +96,9 @@ void g_scan_rule_set_match_condition(GScanRule *, GScanExpression *);
/* Prépare le suivi de recherche de motifs pour une règle. */
bool g_scan_rule_setup_backend(GScanRule *, GEngineBackend *, GScanContext *);
+/* Récupère les identifiants finaux pour les motifs recherchés. */
+bool g_scan_rule_define_pattern_ids(GScanRule *, GEngineBackend *);
+
/* Lance une analyse d'un contenu binaire selon une règle. */
void g_scan_rule_check(GScanRule *, GEngineBackend *, GScanContext *);