summaryrefslogtreecommitdiff
path: root/src/analysis/scan/patterns/backends/acism-int.h
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2024-02-24 17:19:31 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2024-02-24 17:19:31 (GMT)
commitea9be67a9ddec2b4b96b3114bab5f192e53c7911 (patch)
treee667e83a57565528791e981ea387e31c60938fad /src/analysis/scan/patterns/backends/acism-int.h
parentcc181167644e1b88630ac02e2b718ad3ad0145c4 (diff)
Rely on the ACISM tree to detect identical patterns.
Diffstat (limited to 'src/analysis/scan/patterns/backends/acism-int.h')
-rw-r--r--src/analysis/scan/patterns/backends/acism-int.h20
1 files changed, 19 insertions, 1 deletions
diff --git a/src/analysis/scan/patterns/backends/acism-int.h b/src/analysis/scan/patterns/backends/acism-int.h
index af8080f..c4a72ca 100644
--- a/src/analysis/scan/patterns/backends/acism-int.h
+++ b/src/analysis/scan/patterns/backends/acism-int.h
@@ -47,10 +47,28 @@
/* Définition d'une portion de cible */
typedef struct _acism_source_t
{
+ /**
+ * Champs renseignés dans g_acism_backend_setup_for().
+ */
+
const uint8_t *atoms; /* Motif remarquable */
size_t len; /* Nombre d'octets considérés */
- uint32_t coverage[2]; /* Départ et quantité de suivis*/
+ /**
+ * Champs renseignés dans g_acism_backend_build_trie().
+ */
+
+ bool is_first; /* Première instance rencontrée*/
+
+ union
+ {
+ uint32_t coverage[2]; /* Départ et quantité de suivis*/
+ struct
+ {
+ size_t first_source; /* Indice de première source */
+ uint32_t index; /* Position dans la liste */
+ };
+ };
} acism_source_t;