X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Finclude%2Fpalacios%2Fvmm_symmod.h;h=57ef01c59d6739a07b7e4f255969c53716747e95;hb=b1f2d60bdd24fb6f758ad049c0a6859966a38955;hp=b6d3745e14d13ac80be3546ca67620213c854a98;hpb=63fc27a4eedc44a349cf8fde14e4c1b2401b4100;p=palacios.git diff --git a/palacios/include/palacios/vmm_symmod.h b/palacios/include/palacios/vmm_symmod.h index b6d3745..57ef01c 100644 --- a/palacios/include/palacios/vmm_symmod.h +++ b/palacios/include/palacios/vmm_symmod.h @@ -25,19 +25,11 @@ #include #include -struct v3_symmod_loader_ops { - int (*load_module)(struct v3_vm_info * vm, char * name, int len, void * priv_data); -}; -struct v3_symmod_state { - struct v3_symmod_loader_ops * loader_ops; - void * loader_data; - struct hashtable * module_table; -}; #define V3_SYMMOD_INV (0x00000000) #define V3_SYMMOD_LNX (0x00000001) @@ -60,6 +52,25 @@ struct v3_sym_module { +struct v3_symmod_loader_ops { + + int (*load_module)(struct v3_vm_info * vm, struct v3_sym_module * mod, void * priv_data); +}; + + +struct v3_symmod_state { + + struct v3_symmod_loader_ops * loader_ops; + void * loader_data; + + struct hashtable * module_table; + + /* List containing V3 symbols */ + /* (defined in vmm_symmod.c) */ + struct list_head v3_sym_list; +}; + + int v3_set_symmod_loader(struct v3_vm_info * vm, struct v3_symmod_loader_ops * ops, void * priv_data);