From 36ba79324740ec3b6dc305961a9a2609223b032d Mon Sep 17 00:00:00 2001 From: Freya Murphy Date: Mon, 28 Apr 2025 11:10:59 -0400 Subject: stderr in write syscall --- kernel/syscall.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'kernel/syscall.c') diff --git a/kernel/syscall.c b/kernel/syscall.c index 44bfe5f..94eec36 100644 --- a/kernel/syscall.c +++ b/kernel/syscall.c @@ -16,6 +16,10 @@ static struct pcb *pcb; #define ARG3(type, name) type name = (type)(pcb->regs.rdx) #define ARG4(type, name) type name = (type)(pcb->regs.rcx) +#define stdin 0 +#define stdout 1 +#define stderr 2 + __attribute__((noreturn)) static int sys_exit(void) { ARG1(int, status); @@ -52,8 +56,8 @@ static int sys_write(void) if (fd == 0) nbytes = 0; - // write to stdout - else if (fd == 1) { + // write to stdout / stderr + else if (fd == stdout || fd == stderr) { for (size_t i = 0; i < nbytes; i++) kputc(map_buf[i]); } -- cgit v1.2.3-freya