1 /* 2 ** Copyright 2001-2002, Travis Geiselbrecht. All rights reserved. 3 ** Distributed under the terms of the NewOS License. 4 */ 5 #ifndef _KERNEL_ELF_H 6 #define _KERNEL_ELF_H 7 8 9 #include <thread.h> 10 #include <image.h> 11 12 13 #ifdef __cplusplus 14 extern "C" { 15 #endif 16 17 int elf_load_uspace(const char *path, struct team *t, int flags, addr *entry); 18 image_id elf_load_kspace(const char *path, const char *sym_prepend); 19 int elf_unload_kspace(const char *path); 20 addr elf_lookup_symbol(image_id id, const char *symbol); 21 int elf_lookup_symbol_address(addr address, addr *baseAddress, char *text, size_t length); 22 int elf_init(kernel_args *ka); 23 24 #ifdef __cplusplus 25 } 26 #endif 27 28 #endif /* _KERNEL_ELF_H */ 29