diff options
| author | Ada Christine <adachristine18@gmail.com> | 2025-02-02 15:31:14 +0000 |
|---|---|---|
| committer | Ada Christine <adachristine18@gmail.com> | 2025-02-02 15:31:14 +0000 |
| commit | 966cdf0b81ba40f0fd1b0c4b476bf7c35804ae6c (patch) | |
| tree | f6c446a08be4bc4acac74ae65e08b861d0d205c0 | |
| parent | 4bf87b17621d5815a337471ca42b273f8bb2bb3e (diff) | |
more dead code
| -rw-r--r-- | api/kjarna/interface.h | 13 | ||||
| -rw-r--r-- | service/arch/x86_64/dynamic.c | 43 |
2 files changed, 6 insertions, 50 deletions
diff --git a/api/kjarna/interface.h b/api/kjarna/interface.h index 9c0d7fe..d13e5a5 100644 --- a/api/kjarna/interface.h +++ b/api/kjarna/interface.h @@ -5,21 +5,8 @@ #define SYSV_ABI __attribute__((sysv_abi)) -struct kjarna_interface -{ - int (SYSV_ABI *open)(const char *, int, int); - int (SYSV_ABI *close)(int); - off_t (SYSV_ABI *lseek)(int, off_t, int); - ssize_t (SYSV_ABI *read)(int, void *, size_t); - ssize_t (SYSV_ABI *write)(int, const void *, size_t); - - void *(SYSV_ABI *mmap)(void *, size_t, int, int, int, off_t); - int (SYSV_ABI *munmap)(void *, size_t); -}; - struct kjarna_entry_params { - struct kjarna_interface *interface; int argc; char **argv; char **envp; diff --git a/service/arch/x86_64/dynamic.c b/service/arch/x86_64/dynamic.c index 02538ec..d338dce 100644 --- a/service/arch/x86_64/dynamic.c +++ b/service/arch/x86_64/dynamic.c @@ -65,49 +65,18 @@ void kc_dynamic_init(char *base, Elf64_Dyn *dyn) void *kc_dynamic_link(struct elf64_dso_info *dso, int index) { - struct kjarna_interface *ftab = entry_params->interface; - + /* int symindex = ELF64_R_SYM(dso->jmprel.entries[index].r_info); int strindex = dso->dynsym.entries[symindex].st_name; const char *name = &dso->dynsym.strings[strindex]; uintptr_t *fixup = (uintptr_t *)(dso->base + dso->jmprel.entries[index].r_offset); - // TODO: generate a symbol table for kjarna interface - // TODO: implement symbol lookup (maybe hashed too) - if (strcmp(name, "open") == 0) - { - *fixup = (uintptr_t)*ftab->open; - } - else if (strcmp(name, "close") == 0) - { - *fixup = (uintptr_t)*ftab->close; - } - else if (strcmp(name, "read") == 0) - { - *fixup = (uintptr_t)*ftab->read; - } - else if (strcmp(name, "write") == 0) - { - *fixup = (uintptr_t)*ftab->write; - } - else if (strcmp(name, "lseek") == 0) - { - *fixup = (uintptr_t)*ftab->lseek; - } - else if (strcmp(name, "mmap") == 0) - { - *fixup = (uintptr_t)*ftab->mmap; - } - else if (strcmp(name, "munmap") == 0) - { - *fixup = (uintptr_t)*ftab->munmap; - } - else - { - return nullptr; - } - return fixup; + */ + + (void)dso; + (void)index; + return nullptr; } static void do_rela(char *base, Elf64_Rela *rela) |
