]> sourceware.org Git - glibc.git/commit
hurd: Implement close_range and closefrom
authorSergey Bugaev <bugaevc@gmail.com>
Sat, 6 Nov 2021 15:35:24 +0000 (18:35 +0300)
committerSamuel Thibault <samuel.thibault@ens-lyon.org>
Sun, 7 Nov 2021 15:16:11 +0000 (16:16 +0100)
commitf2c996597d7441c1b9b390216c693ecfde3a8588
tree5296e6795bc0101dd2cfd95949b62fdccbacd1df
parent475b63702ef38b69558fc3d31a0b66776a70f1d3
hurd: Implement close_range and closefrom

The close_range () function implements the same API as the Linux and
FreeBSD syscalls. It operates atomically and reliably. The specified
upper bound is clamped to the actual size of the file descriptor table;
it is expected that the most common use case is with last = UINT_MAX.

Like in the Linux syscall, it is also possible to pass the
CLOSE_RANGE_CLOEXEC flag to mark the file descriptors in the range
cloexec instead of acually closing them.

Also, add a Hurd version of the closefrom () function. Since unlike on
Linux, close_range () cannot fail due to being unuspported by the
running kernel, a fallback implementation is never necessary.

Signed-off-by: Sergey Bugaev <bugaevc@gmail.com>
Message-Id: <20211106153524.82700-1-bugaevc@gmail.com>
sysdeps/mach/hurd/Makefile
sysdeps/mach/hurd/Versions
sysdeps/mach/hurd/bits/unistd_ext.h [new file with mode: 0644]
sysdeps/mach/hurd/close_range.c [new file with mode: 0644]
sysdeps/mach/hurd/closefrom.c [new file with mode: 0644]
sysdeps/mach/hurd/i386/libc.abilist
This page took 0.043717 seconds and 5 git commands to generate.