diff options
Diffstat (limited to 'plugins/encodings')
-rw-r--r-- | plugins/encodings/rost/base64.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/plugins/encodings/rost/base64.c b/plugins/encodings/rost/base64.c index 85e268d..15a3ec1 100644 --- a/plugins/encodings/rost/base64.c +++ b/plugins/encodings/rost/base64.c @@ -72,6 +72,9 @@ static bool g_scan_base64_modifier_can_handle_arg(const GScanBase64Modifier *, c /* Transforme une séquence d'octets pour motif de recherche. */ static bool g_scan_base64_modifier_transform_with_arg(const GScanBase64Modifier *, const sized_binary_t *, size_t, const modifier_arg_t *, sized_binary_t **, size_t *); +/* Retrouve l'origine d'une correspondance à partir d'un indice. */ +static char *g_scan_base64_modifier_get_path(const GScanBase64Modifier *, size_t *); + /* ---------------------------------------------------------------------------------- */ @@ -112,6 +115,7 @@ static void g_scan_base64_modifier_class_init(GScanBase64ModifierClass *klass) modifier->transform = (transform_scan_token_fc)g_scan_base64_modifier_transform; modifier->can_handle = (can_token_modifier_handle_arg)g_scan_base64_modifier_can_handle_arg; modifier->transform_with = (transform_scan_token_with_fc)g_scan_base64_modifier_transform_with_arg; + modifier->get_path = (get_modifier_path)g_scan_base64_modifier_get_path; } @@ -511,3 +515,34 @@ static bool g_scan_base64_modifier_transform_with_arg(const GScanBase64Modifier return result; } + + +/****************************************************************************** +* * +* Paramètres : modifier = modificateur à consulter. * +* index = indice de la combinaison ciblée. [OUT] * +* * +* Description : Retrouve l'origine d'une correspondance à partir d'un indice.* +* * +* Retour : Version humainement lisible de la combinaison. * +* * +* Remarques : - * +* * +******************************************************************************/ + +static char *g_scan_base64_modifier_get_path(const GScanBase64Modifier *modifier, size_t *index) +{ + char *result; /* Combinaison à retourner */ + + if (*index > 3) + { + result = NULL; + (*index) -= 3; + } + + else + result = strdup("base64"); + + return result; + +} |