radare2/libr/include/r_pdb.h
inisider d547b037c9 Initial implementation of the PDB parser
* Contains 78 rebased commits

- add R_PDB struct
- add implementation of init_pdb_parser()
- add stub for init_pdb7_root_stream()
- add init_pdb_stream() function
- add functions for working with stream_file
- do fixes for stream_file_read
- add getting of sizes
- save streams to rlist
- add light implementation of read_root function
- add stubs for parsed_pdb_stream_init
- add parsing of pdb info stream
- start of parsing tpi header
- add stub for tpi stream
- fix stream file read. +stubs for eFIELD_LIST
- add parsing of lf_enumerate
- add parsing of lf_nesttype()
- add parsing of LF_METHOD
- add parsing of lf_member
- add some additional parsing of types
- fix some memory leaks
- add support of LF_METHOD and LF_MEMBER
- add support of LF_NESTTYPE
- add support of LF_ENUM
- add parsing of lf_structure
- add parsing of lf_pointer
- start of lf_array implementation
- back implementation of lf_array
- add implementation of LF_MODIFIER
- add implementaion of lf_arglist
- add implementaion of lf_mfunction
- add useful macros
- add implementation of lf_procedure
- add implementation of lf_union
- add free of sval and printf name of sval
- add implementation of LF_BITFIELD
- add implementation of LF_CLASS
- add implementation of LF_VTSHPAE
- start of refactoring
- finish refactor of the code
- fix memory leak issues
- some refactor of memory managment
- fix memory managment
- add supprot of ushort type
- add function for printing type name and value
- add API for getting leaf types members
- refactor of SType and STypeInfO
- add implementation of get_name/val/... for new types
- fix cast in some function of getting name, val, etc
- add stubs for resolving type
- add pointers to function for getting types
- add connections for types function pointers
- add stub for printing structures
- update memory manadgement and fix some problems in API for working with types
- add process of result from init_pdb function
- print more info about structure
- refactor of printing structure info
- Revert of 9fa8e7083c

refactor structure info printing

more pretty print

refactor code

add parsing of dbi header

add structure stabs for dbi stream

add parsing of dbi_ex_headers

add free for dbi stream

finish parsing of dbg stream

add stubs for streams from dbg stream

add fpo parsing

add free for fpo stream and do some refactor

add parsing of gdata stream

add parsing of pe stream

add parsing of fpo new stream

add fpo new stream

add omap stream parsing

add implementation of printing gvars

add setting parameters for pdb_parser

delete unused comments

delete unused comments
2014-10-18 19:49:22 +02:00

38 lines
613 B
C

#ifndef R2_PDB_H
#define R2_PDB_H
#define _R_LIST_C
#include "r_util.h"
#include <stdio.h>
#ifdef __cplusplus
extern "C" {
#endif
#define FILE_NAME_LEN 256
struct R_PDB7_ROOT_STREAM;
typedef struct {
int (*pdb_parse)(struct R_PDB *pdb);
void (*finish_pdb_parse)(struct R_PDB *pdb);
void (*print_types)(struct R_PDB *pdb);
char file_name[FILE_NAME_LEN];
FILE *fp;
struct R_PDB7_ROOT_STREAM *root_stream;
void *stream_map;
RList *pdb_streams;
RList *pdb_streams2;
void (*print_gvars)(struct R_PDB *pdb, int img_base);
} R_PDB;
int init_pdb_parser(R_PDB *pdb);
#ifdef __cplusplus
}
#endif
#endif