diff options
Diffstat (limited to 'src/format/executable-int.h')
-rw-r--r-- | src/format/executable-int.h | 26 |
1 files changed, 11 insertions, 15 deletions
diff --git a/src/format/executable-int.h b/src/format/executable-int.h index f5a25b5..4b86092 100644 --- a/src/format/executable-int.h +++ b/src/format/executable-int.h @@ -1,6 +1,6 @@ /* Chrysalide - Outil d'analyse de fichiers binaires - * executable-int.h - prototypes utiles aux formats d'exécutables + * executable-int.h - prototypes de code utile aux formats d'exécutables * * Copyright (C) 2009-2013 Cyrille Bagard * @@ -38,14 +38,6 @@ typedef const char * (* get_target_machine_fc) (const GExeFormat *); /* Etend la définition des portions au sein d'un binaire. */ typedef void (* refine_portions_fc) (const GExeFormat *, GBinPortion *); -/* Fournit la position correspondant à une adresse virtuelle. */ -typedef bool (* translate_addr_fc) (const GExeFormat *, vmpa_t, off_t *); - -/* Fournit l'adresse virtuelle correspondant à une position. */ -typedef bool (* translate_off_fc) (const GExeFormat *, off_t, vmpa_t *); - - - /* Fournit l'emplacement correspondant à une position physique. */ typedef bool (* translate_phys_fc) (const GExeFormat *, phys_t, vmpa2t *); @@ -65,12 +57,6 @@ struct _GExeFormat GDbgFormat **debugs; /* Informations de débogage */ size_t debugs_count; /* Nombre de ces informations */ - get_target_machine_fc get_machine; /* Architecture ciblée */ - refine_portions_fc refine_portions; /* Décrit les portions binaires*/ - - translate_addr_fc translate_addr; /* Correspondance addr -> pos */ - translate_off_fc translate_off; /* Correspondance pos -> addr */ - GBinPortion *portions; /* Morceaux binaires distincts */ }; @@ -80,6 +66,9 @@ struct _GExeFormatClass { GBinFormatClass parent; /* A laisser en premier */ + get_target_machine_fc get_machine; /* Architecture ciblée */ + refine_portions_fc refine_portions; /* Décrit les portions binaires*/ + translate_phys_fc translate_phys; /* Correspondance phys -> vmpa */ translate_virt_fc translate_virt; /* Correspondance virt -> vmpa */ @@ -88,5 +77,12 @@ struct _GExeFormatClass }; +/* Fournit l'emplacement correspondant à une position physique. */ +bool g_exe_format_without_virt_translate_offset_into_vmpa(const GExeFormat *, phys_t, vmpa2t *); + +/* Fournit l'emplacement correspondant à une adresse virtuelle. */ +bool g_exe_format_without_virt_translate_address_into_vmpa(const GExeFormat *, virt_t, vmpa2t *); + + #endif /* _FORMAT_EXECUTABLE_INT_H */ |