diff options
Diffstat (limited to 'sysdeps/generic/not-cancel.h')
-rw-r--r-- | sysdeps/generic/not-cancel.h | 77 |
1 files changed, 28 insertions, 49 deletions
diff --git a/sysdeps/generic/not-cancel.h b/sysdeps/generic/not-cancel.h index b3297107c7..d9f8a75dbd 100644 --- a/sysdeps/generic/not-cancel.h +++ b/sysdeps/generic/not-cancel.h @@ -1,5 +1,5 @@ /* Uncancelable versions of cancelable interfaces. Generic version. - Copyright (C) 2003-2016 Free Software Foundation, Inc. + Copyright (C) 2003-2018 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@redhat.com>, 2003. @@ -17,62 +17,41 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ -/* By default we have none. Map the name to the normal functions. */ - -/* Uncancelable open. */ -#if IS_IN (libc) || IS_IN (libpthread) || IS_IN (librt) -# define open_not_cancel(name, flags, mode) \ - __libc_open (name, flags, mode) -# define open_not_cancel_2(name, flags) \ - __libc_open (name, flags) -#else -/* In this case, we can't use the libc_* internal functions. */ -# define open_not_cancel(name, flags, mode) \ - __open (name, flags, mode) -# define open_not_cancel_2(name, flags) \ - __open (name, flags) -#endif +#ifndef NOT_CANCEL_H +# define NOT_CANCEL_H -/* Uncancelable openat. */ -#define openat_not_cancel(fd, name, flags, mode) \ - __openat (fd, name, flags, mode) -#define openat_not_cancel_3(fd, name, flags) \ - __openat (fd, name, flags, 0) -#define openat64_not_cancel(fd, name, flags, mode) \ - __openat64 (fd, name, flags, mode) -#define openat64_not_cancel_3(fd, name, flags) \ - __openat64 (fd, name, flags, 0) +#include <fcntl.h> +#include <unistd.h> +#include <sys/wait.h> +#include <time.h> +#include <sys/uio.h> -/* Uncancelable close. */ -#define close_not_cancel(fd) \ +/* By default we have none. Map the name to the normal functions. */ +#define __open_nocancel(...) \ + __open (__VA_ARGS__) +#define __open64_nocancel(...) \ + __open64 (__VA_ARGS__) +#define __openat_nocancel(...) \ + __openat (__VA_ARGS__) +#define __openat64_nocancel(...) \ + __openat64 (__VA_ARGS__) +#define __close_nocancel(fd) \ __close (fd) -#define close_not_cancel_no_status(fd) \ +#define __close_nocancel_nostatus(fd) \ (void) __close (fd) - -/* Uncancelable read. */ -#define read_not_cancel(fd, buf, n) \ +#define __read_nocancel(fd, buf, n) \ __read (fd, buf, n) - -/* Uncancelable write. */ -#define write_not_cancel(fd, buf, n) \ +#define __write_nocancel(fd, buf, n) \ __write (fd, buf, n) - -/* Uncancelable writev. */ -#define writev_not_cancel_no_status(fd, iov, n) \ +#define __writev_nocancel_nostatus(fd, iov, n) \ (void) __writev (fd, iov, n) - -/* Uncancelable fcntl. */ -#define fcntl_not_cancel(fd, cmd, val) \ - __fcntl (fd, cmd, val) - -/* Uncancelable waitpid. */ -# define waitpid_not_cancel(pid, stat_loc, options) \ +# define __waitpid_nocancel(pid, stat_loc, options) \ __waitpid (pid, stat_loc, options) -#define pause_not_cancel() \ +#define __pause_nocancel() \ __pause () -#define nanosleep_not_cancel(requested_time, remaining) \ +#define __nanosleep_nocancel(requested_time, remaining) \ __nanosleep (requested_time, remaining) -#define sigsuspend_not_cancel(set) \ - __sigsuspend (set) +#define __fcntl64_nocancel(fd, cmd, ...) \ + __fcntl64 (fd, cmd, __VA_ARGS__) -#define NO_CANCELLATION 1 +#endif /* NOT_CANCEL_H */ |