1 /* radare2 - LGPL - Copyright 2015-2020 - pancake */ 2 3 #ifndef R2_BIND_H 4 #define R2_BIND_H 5 6 // TODO: move riobind here too? 7 // TODO: move rprint here too 8 9 typedef int (*RCoreCmd)(void *core, const char *cmd); 10 typedef int (*RCoreCmdF)(void *user, const char *fmt, ...); 11 typedef int (*RCoreDebugBpHit)(void *core, void *bp); 12 typedef void (*RCoreDebugSyscallHit)(void *core); 13 typedef char* (*RCoreCmdStr)(void *core, const char *cmd); 14 typedef char* (*RCoreCmdStrF)(void *core, const char *cmd, ...); 15 typedef void (*RCorePuts)(const char *cmd); 16 typedef void (*RCoreSetArchBits)(void *core, const char *arch, int bits); 17 typedef bool (*RCoreIsMapped)(void *core, ut64 addr, int perm); 18 typedef bool (*RCoreDebugMapsSync)(void *core); 19 typedef const char *(*RCoreGetName)(void *core, ut64 off); 20 typedef char *(*RCoreGetNameDelta)(void *core, ut64 off); 21 typedef void (*RCoreSeekArchBits)(void *core, ut64 addr); 22 typedef int (*RCoreConfigGetI)(void *core, const char *key); 23 typedef const char *(*RCoreConfigGet)(void *core, const char *key); 24 typedef ut64 (*RCoreNumGet)(void *core, const char *str); 25 typedef void *(*RCorePJWithEncoding)(void *core); 26 27 typedef struct r_core_bind_t { 28 void *core; 29 RCoreCmd cmd; 30 RCoreCmdF cmdf; 31 RCoreCmdStr cmdstr; 32 RCoreCmdStrF cmdstrf; 33 RCorePuts puts; 34 RCoreDebugBpHit bphit; 35 RCoreDebugSyscallHit syshit; 36 RCoreSetArchBits setab; 37 RCoreGetName getName; 38 RCoreGetNameDelta getNameDelta; 39 RCoreSeekArchBits archbits; 40 RCoreConfigGetI cfggeti; 41 RCoreConfigGet cfgGet; 42 RCoreNumGet numGet; 43 RCoreIsMapped isMapped; 44 RCoreDebugMapsSync syncDebugMaps; 45 RCorePJWithEncoding pjWithEncoding; 46 } RCoreBind; 47 48 #endif 49