diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2023-10-01 18:08:26 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2023-10-01 18:08:26 (GMT) |
commit | 3ab6c0c0072ae0e2abde48d60d7eac18f084a764 (patch) | |
tree | eb971388c5061dc91416924e98cc0c965fdcd19c /src/analysis/scan/patterns/modifier-int.h | |
parent | 8c3fa9dab2ca7c46b6334fbbac5baf0fb822add0 (diff) |
Introduce parameters for scan pattern modifiers.
Diffstat (limited to 'src/analysis/scan/patterns/modifier-int.h')
-rw-r--r-- | src/analysis/scan/patterns/modifier-int.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/analysis/scan/patterns/modifier-int.h b/src/analysis/scan/patterns/modifier-int.h index 246c139..e1de2d8 100644 --- a/src/analysis/scan/patterns/modifier-int.h +++ b/src/analysis/scan/patterns/modifier-int.h @@ -33,7 +33,13 @@ typedef char * (* get_scan_modifier_name_fc) (const GScanTokenModifier *); /* Transforme une séquence d'octets pour motif de recherche. */ -typedef bool (* transform_scan_token_fc) (const GScanTokenModifier *, const sized_binary_t *, sized_binary_t **, size_t *); +typedef bool (* transform_scan_token_fc) (const GScanTokenModifier *, const sized_binary_t *, size_t, sized_binary_t **, size_t *); + +/* Détermine si un argument est bien toléré par un modificateur. */ +typedef bool (* can_token_modifier_handle_arg) (const GScanTokenModifier *, const modifier_arg_t *); + +/* Transforme une séquence d'octets pour motif de recherche. */ +typedef bool (* transform_scan_token_with_fc) (const GScanTokenModifier *, const sized_binary_t *, size_t, const modifier_arg_t *, sized_binary_t **, size_t *); /* Transformation d'une séquence d'octets en une ou plusieurs autres formes (instance) */ @@ -51,6 +57,8 @@ struct _GScanTokenModifierClass get_scan_modifier_name_fc get_name; /* Fourniture du nom d'appel */ transform_scan_token_fc transform; /* Opération de transformation */ + can_token_modifier_handle_arg can_handle; /* Support d'argument donné */ + transform_scan_token_with_fc transform_with; /* Opération encadrée */ }; |