From dac12c22cdbc24c5a5a9ff3fdc9ef6422c8b1d14 Mon Sep 17 00:00:00 2001 From: Daniel Hammer Date: Fri, 28 Aug 2026 09:14:02 +0200 Subject: [PATCH] feat: update isatty libc function to use SYS_TERMINAL_ATTACHED syscall --- programs/lib/libc/libc.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/programs/lib/libc/libc.c b/programs/lib/libc/libc.c index a49da25..a92d6dc 100644 --- a/programs/lib/libc/libc.c +++ b/programs/lib/libc/libc.c @@ -103,6 +103,7 @@ static inline long _zos_syscall4(long nr, long a1, long a2, long a3, long a4) { #define SYS_GETMILLISECONDS 14 #define SYS_GETCHAR 18 #define SYS_GETCHAR_NB 166 +#define SYS_TERMINAL_ATTACHED 177 #define SYS_SPAWN 20 #define SYS_WAITPID 23 #define SYS_GETARGS 25 @@ -2470,7 +2471,9 @@ char *getcwd(char *buf, size_t size) { } int isatty(int fd) { - return fd >= 0 && fd <= 2; + if (fd < STDIN_FILENO || fd > STDERR_FILENO) + return 0; + return _zos_syscall0(SYS_TERMINAL_ATTACHED) != 0; } /* ========================================================================