diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2014-06-25 19:30:19 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2014-06-25 19:30:19 (GMT) |
commit | e8aa314462196cc9e8461ae23eb13f8bffcc983f (patch) | |
tree | dd41b8cdc44fe6dff774b1faca0500536ca8e565 /src/analysis | |
parent | 3bf12eda58a8d04ac3d2d6754a480de4c262570d (diff) |
Given a name and a description for binaries, not always based on a filenames.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@380 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/analysis')
-rw-r--r-- | src/analysis/binaries/file.c | 28 | ||||
-rw-r--r-- | src/analysis/binaries/file.h | 2 | ||||
-rw-r--r-- | src/analysis/binary-int.h | 4 | ||||
-rw-r--r-- | src/analysis/binary.c | 6 | ||||
-rw-r--r-- | src/analysis/binary.h | 4 | ||||
-rw-r--r-- | src/analysis/disass/disassembler.c | 2 |
6 files changed, 34 insertions, 12 deletions
diff --git a/src/analysis/binaries/file.c b/src/analysis/binaries/file.c index ad140ab..d833828 100644 --- a/src/analysis/binaries/file.c +++ b/src/analysis/binaries/file.c @@ -66,6 +66,9 @@ static void g_file_binary_finalize(GFileBinary *); /* Ecrit une sauvegarde du binaire dans un fichier XML. */ static bool g_file_binary_save(const GFileBinary *, xmlDocPtr, xmlXPathContextPtr, const char *); +/* Fournit le nom associé à l'élément binaire. */ +static const char *g_file_binary_get_name(const GFileBinary *, bool); + /* Indique le type défini pour une description de fichier binaire. */ @@ -115,7 +118,7 @@ static void g_file_binary_init(GFileBinary *binary) loaded = G_LOADED_BINARY(binary); loaded->save = (save_binary_fc)g_file_binary_save; - loaded->get_filename = (get_binary_filename_fc)g_file_binary_get_filename; + loaded->get_name = (get_binary_name_fc)g_file_binary_get_name; } @@ -337,7 +340,7 @@ static bool g_file_binary_save(const GFileBinary *binary, xmlDocPtr xdoc, xmlXPa * Paramètres : binary = élément binaire à consulter. * * full = précise s'il s'agit d'une version longue ou non. * * * -* Description : Fournit le fichier correspondant à l'élément binaire. * +* Description : Fournit le nom associé à l'élément binaire. * * * * Retour : Nom de fichier avec chemin absolu. * * * @@ -345,7 +348,7 @@ static bool g_file_binary_save(const GFileBinary *binary, xmlDocPtr xdoc, xmlXPa * * ******************************************************************************/ -const char *g_file_binary_get_filename(const GFileBinary *binary, bool full) +static const char *g_file_binary_get_name(const GFileBinary *binary, bool full) { const char *result; /* Description à retourner */ @@ -357,3 +360,22 @@ const char *g_file_binary_get_filename(const GFileBinary *binary, bool full) return result; } + + +/****************************************************************************** +* * +* Paramètres : binary = élément binaire à consulter. * +* * +* Description : Fournit le fichier correspondant à l'élément binaire. * +* * +* Retour : Nom de fichier avec chemin absolu. * +* * +* Remarques : - * +* * +******************************************************************************/ + +const char *g_file_binary_get_filename(const GFileBinary *binary) +{ + return binary->filename; + +} diff --git a/src/analysis/binaries/file.h b/src/analysis/binaries/file.h index 40bc722..63f7e7c 100644 --- a/src/analysis/binaries/file.h +++ b/src/analysis/binaries/file.h @@ -57,7 +57,7 @@ GLoadedBinary *g_file_binary_new_from_file(const char *); GLoadedBinary *g_file_binary_new_from_xml(xmlXPathContextPtr, const char *); /* Fournit le fichier correspondant à l'élément binaire. */ -const char *g_file_binary_get_filename(const GFileBinary *, bool); +const char *g_file_binary_get_filename(const GFileBinary *); diff --git a/src/analysis/binary-int.h b/src/analysis/binary-int.h index 7c4b05e..8aa2e83 100644 --- a/src/analysis/binary-int.h +++ b/src/analysis/binary-int.h @@ -37,7 +37,7 @@ typedef bool (* save_binary_fc) (const GLoadedBinary *, xmlDocPtr, xmlXPathContextPtr, const char *); /* Fournit le fichier correspondant à l'élément binaire. */ -typedef const char * (* get_binary_filename_fc) (const GLoadedBinary *, bool); +typedef const char * (* get_binary_name_fc) (const GLoadedBinary *, bool); /* Description de fichier binaire (instance) */ @@ -56,7 +56,7 @@ struct _GLoadedBinary DBStorage storages[DBF_COUNT]; /* Lieux d'enregistrement */ save_binary_fc save; /* Sauvegarde au format XML */ - get_binary_filename_fc get_filename; /* Obtention d'une description */ + get_binary_name_fc get_name; /* Obtention d'une description */ off_t bin_length; /* Taille des données brutes */ bin_t *bin_data; /* Données binaires brutes */ diff --git a/src/analysis/binary.c b/src/analysis/binary.c index db6cbae..a9379e9 100644 --- a/src/analysis/binary.c +++ b/src/analysis/binary.c @@ -992,7 +992,7 @@ void g_loaded_binary_analyse(GLoadedBinary *binary) * Paramètres : binary = élément binaire à consulter. * * full = précise s'il s'agit d'une version longue ou non. * * * -* Description : Fournit le fichier correspondant à l'élément binaire. * +* Description : Fournit le nom associé à l'élément binaire. * * * * Retour : Nom de fichier avec chemin absolu. * * * @@ -1000,9 +1000,9 @@ void g_loaded_binary_analyse(GLoadedBinary *binary) * * ******************************************************************************/ -const char *g_loaded_binary_get_filename(const GLoadedBinary *binary, bool full) +const char *g_loaded_binary_get_name(const GLoadedBinary *binary, bool full) { - return binary->get_filename(binary, full); + return binary->get_name(binary, full); } diff --git a/src/analysis/binary.h b/src/analysis/binary.h index 5b65fa8..f3e2d09 100644 --- a/src/analysis/binary.h +++ b/src/analysis/binary.h @@ -119,8 +119,8 @@ GBinPart ***g_loaded_binary_get_parts(const GLoadedBinary *, BinaryPartModel *, /* Lance l'analyse d'un élément binaire chargé. */ void g_loaded_binary_analyse(GLoadedBinary *); -/* Fournit le fichier correspondant à l'élément binaire. */ -const char *g_loaded_binary_get_filename(const GLoadedBinary *, bool); +/* Fournit le nom associé à l'élément binaire. */ +const char *g_loaded_binary_get_name(const GLoadedBinary *, bool); /* Fournit une empreinte unique (SHA256) pour le binaire. */ const gchar *g_loaded_binary_get_cheksum(const GLoadedBinary *); diff --git a/src/analysis/disass/disassembler.c b/src/analysis/disass/disassembler.c index 2f430eb..8020e02 100644 --- a/src/analysis/disass/disassembler.c +++ b/src/analysis/disass/disassembler.c @@ -427,7 +427,7 @@ void disassemble_binary(GLoadedBinary *binary, GBinPart **parts, size_t parts_co *buffer = g_code_buffer_new(BLC_ASSEMBLY); data = g_loaded_binary_get_data(binary, &length); - build_disass_prologue(*buffer, g_loaded_binary_get_filename(binary, true), data, length); + build_disass_prologue(*buffer, g_loaded_binary_get_name(binary, true), data, length); disass = g_delayed_disassembly_new(binary, parts, parts_count, instrs, *buffer); g_signal_connect(disass, "work-completed", G_CALLBACK(ack), binary); |