diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2015-09-20 12:21:51 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2015-09-20 12:21:51 (GMT) |
commit | ad4ae001fbb37bdccd99ef1e01404ae72c0a1318 (patch) | |
tree | a49259c55e087e7964d0f3484a2e10e5b6bff1b5 /src/analysis/binary.c | |
parent | 0e3059731d9687027c913135b3b856596c49a689 (diff) |
Defined one unique type to handle binaries.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@578 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/analysis/binary.c')
-rw-r--r-- | src/analysis/binary.c | 49 |
1 files changed, 47 insertions, 2 deletions
diff --git a/src/analysis/binary.c b/src/analysis/binary.c index c94f4f6..a1eb09f 100644 --- a/src/analysis/binary.c +++ b/src/analysis/binary.c @@ -35,9 +35,8 @@ #include <i18n.h> -#include "binary-int.h" #include "routine.h" -#include "binaries/file.h" +#include "db/client.h" #include "decomp/decompiler.h" #include "disass/disassembler.h" #include "../common/extstr.h" @@ -54,6 +53,52 @@ /* ------------------------ DESASSEMBLAGE DE BINAIRE DIFFERE ------------------------ */ +/* Description de fichier binaire (instance) */ +struct _GLoadedBinary +{ + GObject parent; /* A laisser en premier */ + + char *username; /* Identifiant de l'utilisateur*/ + bool username_changed; /* Mémorise les changements */ + char *remote_host; /* Nom du serveur distant */ + unsigned short remote_port; /* Port du serveur distant */ + bool use_remote_server; /* Indique une utilisation */ + + GDbClient *local; /* Enregistrements locaux */ + GDbClient *remote; /* Enregistrements distants */ + + DBStorage storages[DBF_COUNT]; /* Lieux d'enregistrement */ + GList *collections; /* Ensemble de modifications */ + + GBinContent *content; /* Contenu binaire chargé */ //// REMME + + GExeFormat *format; /* Format du binaire */ + GDbgFormat *debug; /* Informations de débogage */ //// REMME + GArchProcessor *proc; /* Architecture du binaire */ + + GArchInstruction *instrs; /* Instructions d'assemblage */ + GCodeBuffer *disass_buffer; /* Instructions lisibles */ + GCodeBuffer **dec_buffers; /* Sources sous forme de texte */ + size_t decbuf_count; /* Taille des tableaux */ + size_t defsrc; /* Fichier source principal */ + + bool col_display[BVW_COUNT][BLC_DISPLAY];/* Position et code binaire */ + bool lines_display; /* Affichage des lignes */ + +}; + +/* Description de fichier binaire (classe) */ +struct _GLoadedBinaryClass +{ + GObjectClass parent; /* A laisser en premier */ + + /* Signaux */ + + void (* disassembly_done) (GLoadedBinary *); + void (* display_changed) (GLoadedBinary *, BinaryView, BufferLineColumn); + +}; + /* Initialise la classe des descriptions de fichier binaire. */ static void g_loaded_binary_class_init(GLoadedBinaryClass *); |