diff options
Diffstat (limited to 'src/format/debuggable.c')
-rw-r--r-- | src/format/debuggable.c | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/format/debuggable.c b/src/format/debuggable.c index f66ab96..03ee4ed 100644 --- a/src/format/debuggable.c +++ b/src/format/debuggable.c @@ -39,6 +39,9 @@ static void g_debuggable_format_class_init(GDbgFormatClass *); /* Initialise une instance de format d'exécutable générique. */ static void g_debuggable_format_init(GDbgFormat *); +/* Indique le boutisme employé par le format binaire analysé. */ +static SourceEndian g_debuggable_format_get_endianness(const GDbgFormat *); + /* Indique le type défini pour un format de débogage générique. */ @@ -59,6 +62,11 @@ G_DEFINE_TYPE(GDbgFormat, g_debuggable_format, G_TYPE_BIN_FORMAT); static void g_debuggable_format_class_init(GDbgFormatClass *klass) { + GBinFormatClass *fmt; /* Version en format basique */ + + fmt = G_BIN_FORMAT_CLASS(klass); + + fmt->get_endian = (format_get_endian_fc)g_debuggable_format_get_endianness; } @@ -81,8 +89,42 @@ static void g_debuggable_format_init(GDbgFormat *format) } +/****************************************************************************** +* * +* Paramètres : format = description du binaire de débogage à consulter. * +* * +* Description : Indique le boutisme employé par le format binaire analysé. * +* * +* Retour : Boutisme associé au format. * +* * +* Remarques : - * +* * +******************************************************************************/ + +static SourceEndian g_debuggable_format_get_endianness(const GDbgFormat *format) +{ + return g_binary_format_get_endianness(G_BIN_FORMAT(format->executable)); + +} +/****************************************************************************** +* * +* Paramètres : format = description du binaire de débogage à compléter. * +* executable = référence vers le binaire exécutable à lier. * +* * +* Description : Associe officiellement des formats exécutable et de débogage.* +* * +* Retour : - * +* * +* Remarques : - * +* * +******************************************************************************/ +void g_debuggable_format_attach_executable(GDbgFormat *format, GExeFormat *executable) +{ + format->executable = executable; + g_object_ref(G_OBJECT(executable)); +} |