From ae1a9cfda6f4e5dc25557de74987cb2c4e732890 Mon Sep 17 00:00:00 2001 From: Alex Date: Sat, 10 Dec 2022 09:32:41 +0200 Subject: [PATCH] Fix envp --- apps/system/init/init.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/system/init/init.c b/apps/system/init/init.c index 648026d..5ae52bd 100644 --- a/apps/system/init/init.c +++ b/apps/system/init/init.c @@ -60,13 +60,16 @@ static inline long syscall2(int sc, long arg1, long arg2) void putchar(char c) { syscall2(1, c, 0); } -int main(int argc, char *argv[], char *envp[]) +int main(int argc, char *argv[], int envc, char *envp[]) { printf_("Hello World!\n"); + printf_("%p %p %p %p\n", argc, argv, envc, envp); printf_("I have %d arguments\n", argc); for (int i = 0; i < argc; i++) printf_("argv[%d] = (%p) %s\n", i, argv[i], argv[i]); - for (int i = 0; envp[i]; i++) + + printf_("I have %d environment variables\n", envc); + for (int i = 0; i < envc; i++) printf_("envp[%d] = (%p) %s\n", i, envp[i], envp[i]); Elf64_auxv_t *auxv; while (*envp++ != NULL)