diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2015-10-01 15:55:39 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2015-10-01 15:55:39 (GMT) |
commit | d51fef170f00602744e55a8fdb21a3c7d196696a (patch) | |
tree | 5f51c1cdb09669da974c1b99d280a4e7078aab7f /src/format/dex/pool.h | |
parent | 9aa5b354e83825e2d9843aea742aa62221a2130b (diff) |
Rewritten the whole support of DEX file format.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@581 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/format/dex/pool.h')
-rw-r--r-- | src/format/dex/pool.h | 31 |
1 files changed, 25 insertions, 6 deletions
diff --git a/src/format/dex/pool.h b/src/format/dex/pool.h index e947465..df02ed8 100644 --- a/src/format/dex/pool.h +++ b/src/format/dex/pool.h @@ -25,7 +25,9 @@ #define _FORMAT_DEX_POOL_H +#include "class.h" #include "dex.h" +#include "method.h" #include "../../analysis/routine.h" @@ -36,22 +38,39 @@ bool find_all_dex_strings(GDexFormat *); /* Extrait une chaîne de caractères d'une table DEX. */ const char *get_string_from_dex_pool(const GDexFormat *, uint32_t); -/* Extrait une représentation de type d'une table DEX. */ -GDataType *get_type_from_dex_pool(const GDexFormat *, uint16_t); -/* Extrait une représentation de classe d'une table DEX. */ -GDataType *get_class_from_dex_pool(const GDexFormat *, uint32_t); +/* Charge en mémoire l'ensemble des types du format DEX. */ +bool load_all_dex_types(GDexFormat *); +/* Extrait une représentation de type d'une table DEX. */ +GDataType *get_type_from_dex_pool(GDexFormat *, uint32_t); +/* Charge en mémoire l'ensemble des champs du format DEX. */ +bool load_all_dex_fields(GDexFormat *); /* Extrait une représentation de champ d'une table DEX. */ -GBinVariable *get_field_from_dex_pool(const GDexFormat *, uint32_t); +GBinVariable *get_field_from_dex_pool(GDexFormat *, uint32_t); + +/* Charge tous les prototypes listés dans le contenu binaire. */ +bool load_all_dex_prototypes(GDexFormat *); /* Extrait une représentation de routine d'une table DEX. */ -GBinRoutine *get_routine_from_dex_pool(const GDexFormat *, uint32_t); +GBinRoutine *get_prototype_from_dex_pool(GDexFormat *, uint32_t); + +/* Charge toutes les méthodes listées dans le contenu binaire. */ +bool load_all_dex_methods(GDexFormat *); + +/* Extrait une représentation de méthode d'une table DEX. */ +GDexMethod *get_method_from_dex_pool(GDexFormat *, uint32_t); + +/* Charge toutes les classes listées dans le contenu binaire. */ +bool load_all_dex_classes(GDexFormat *); + +/* Extrait une représentation de classe d'une table DEX. */ +GDexClass *get_class_from_dex_pool(GDexFormat *, uint32_t); |