51 static int init_done = 0;
87 struct vmi1__DebugFileOptsT *
opts,
100 if (opts->doMultiRef)
101 soap_set_omode(soap,SOAP_XML_GRAPH);
113 reftab = g_hash_table_new_full(g_direct_hash,g_direct_equal,NULL,NULL);
120 array_list_free(refstack);
121 g_hash_table_destroy(reftab);
123 array_list_free(loaded_list);
130 char *filename,
struct vmi1__DebugFileOptsT *
opts,
134 return soap_receiver_fault(soap,
"Not implemented!",
"Not implemented!");
139 struct vmi1__DebugFileOptsT *
opts,
143 return soap_receiver_fault(soap,
"Not implemented!",
"Not implemented!");
147 char *filename,
char *name,
148 struct vmi1__DebugFileOptsT *
opts,
158 if (opts->doMultiRef)
159 soap_set_omode(soap,SOAP_XML_GRAPH);
161 if (filename == NULL || name == NULL
162 || strcmp(filename,
"") == 0 || strcmp(name,
"") == 0) {
163 return soap_receiver_fault(soap,
"Bad debugfile or name!",
164 "Bad debugfile or name!");
168 return soap_receiver_fault(soap,
"Could not load debugfile!",
169 "Could not load debugfile!");
174 return soap_receiver_fault(soap,
"Could not find symbol!",
175 "Could not find symbol!");
177 reftab = g_hash_table_new_full(g_direct_hash,g_direct_equal,NULL,NULL);
180 opts,reftab,refstack,0);
181 array_list_free(refstack);
182 g_hash_table_destroy(reftab);
191 char *filename,
char *name,
192 struct vmi1__DebugFileOptsT *
opts,
203 if (opts->doMultiRef)
204 soap_set_omode(soap,SOAP_XML_GRAPH);
206 if (filename == NULL || name == NULL
207 || strcmp(filename,
"") == 0 || strcmp(name,
"") == 0) {
208 return soap_receiver_fault(soap,
"Bad debugfile or name!",
209 "Bad debugfile or name!");
212 return soap_receiver_fault(soap,
"Could not load debugfile!",
213 "Could not load debugfile!");
218 return soap_receiver_fault(soap,
"Could not find symbol!",
219 "Could not find symbol!");
221 reftab = g_hash_table_new_full(g_direct_hash,g_direct_equal,NULL,NULL);
225 opts,reftab,refstack,0);
227 vwarn(
"%d %d %p\n",g_hash_table_size(reftab),
231 vwarn(
"%d\n",g_hash_table_size(reftab));
233 array_list_free(refstack);
234 g_hash_table_destroy(reftab);
242 char *filename,vmi1__ADDR addr,
243 struct vmi1__DebugFileOptsT *
opts,
245 return soap_receiver_fault(soap,
"Not implemented!",
"Not implemented!");
249 char *filename,vmi1__ADDR addr,
250 struct vmi1__DebugFileOptsT *
opts,
252 return soap_receiver_fault(soap,
"Not implemented!",
"Not implemented!");
256 char *filename,
char *name,
257 struct vmi1__DebugFileOptsT *
opts,
259 return soap_receiver_fault(soap,
"Not implemented!",
"Not implemented!");
struct debugfile * debugfile_from_file(char *filename, char *root_prefix, struct array_list *debugfile_load_opts_list)
REFCNT lsymbol_release(struct lsymbol *lsymbol)
int vmi1__LookupAllSymbols(struct soap *soap, char *filename, char *name, struct vmi1__DebugFileOptsT *opts, struct vmi1__NestedSymbolResponse *r)
static uint64_t unsigned int i
struct vmi1__DebugFileOptsT defDebugFileOpts
void generic_rpc_init(void)
int vmi1__LoadDebugFile(struct soap *soap, char *filename, struct vmi1__DebugFileOptsT *opts, struct vmi1__DebugFile *r)
pthread_mutex_t debuginfo_rpc_mutex
#define vwarn(format,...)
#define array_list_foreach(alist, lpc, placeholder)
int vmi1__LookupSymbol(struct soap *soap, char *filename, char *name, struct vmi1__DebugFileOptsT *opts, struct vmi1__NestedSymbolResponse *r)
struct dt_argp_state opts
struct vmi1__SymbolT * d_symbol_to_x_SymbolT(struct soap *soap, struct symbol *s, struct vmi1__DebugFileOptsT *opts, GHashTable *reftab, struct array_list *refstack, int depth)
struct vmi1__DebugFileT * d_debugfile_to_x_DebugFileT(struct soap *soap, struct debugfile *df, struct vmi1__DebugFileOptsT *opts, GHashTable *reftab, struct array_list *refstack, int depth)
void debuginfo_rpc_fini(void)
struct vmi1__SymbolsT * nestedSymbol
int vmi1__LookupAddr(struct soap *soap, char *filename, vmi1__ADDR addr, struct vmi1__DebugFileOptsT *opts, struct vmi1__NestedSymbolResponse *r)
void debuginfo_rpc_init(void)
struct vmi1__DebugFileT ** debugFile
struct lsymbol * debugfile_lookup_sym(struct debugfile *debugfile, char *name, const char *delim, struct rfilter *srcfile_filter, symbol_type_flag_t flags)
struct vmi1__SymbolT * symbol
void generic_rpc_fini(void)
struct vmi1__SymbolsT * d_symbol_array_list_to_x_SymbolsT(struct soap *soap, struct array_list *list, struct vmi1__DebugFileOptsT *opts, GHashTable *reftab, struct array_list *refstack, int depth)
struct array_list * debugfile_get_loaded_debugfiles(void)
int vmi1__LookupSymbolSimple(struct soap *soap, char *filename, char *name, struct vmi1__DebugFileOptsT *opts, struct vmi1__SymbolResponse *r)
#define DEF_REFSTACK_SIZE
struct array_list * chain
int vmi1__ListDebugFiles(struct soap *soap, struct vmi1__DebugFileOptsT *opts, struct vmi1__DebugFiles *r)
int vmi1__LoadDebugFileForBinary(struct soap *soap, char *filename, struct vmi1__DebugFileOptsT *opts, struct vmi1__DebugFile *r)
int vmi1__LookupAddrSimple(struct soap *soap, char *filename, vmi1__ADDR addr, struct vmi1__DebugFileOptsT *opts, struct vmi1__SymbolResponse *r)