Explorar o código

block all signals, even implementation-internal ones, in faccessat child

the child process's stack may be insufficient size to support a signal
frame, and there is no reason these signal handlers should run in the
child anyway.
Rich Felker %!s(int64=11) %!d(string=hai) anos
pai
achega
9848e64819
Modificáronse 1 ficheiros con 1 adicións e 1 borrados
  1. 1 1
      src/unistd/faccessat.c

+ 1 - 1
src/unistd/faccessat.c

@@ -37,7 +37,7 @@ int faccessat(int fd, const char *filename, int amode, int flag)
 	if (pipe(p)) return __syscall_ret(-EBUSY);
 	struct ctx c = { .fd = fd, .filename = filename, .amode = amode, .p = p[1] };
 
-	__block_app_sigs(&set);
+	__block_all_sigs(&set);
 	
 	ret = __clone(checker, stack+sizeof stack, 0, &c);
 	__syscall(SYS_close, p[1]);