From c1f25758c353fcb16076512aba62746bff2e0d2d Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Fri, 13 Dec 2019 03:23:14 +0100 Subject: hurd: Implement __close_nocancel_nostatus * sysdeps/mach/hurd/not-cancel.h: New file. --- sysdeps/mach/hurd/not-cancel.h | 62 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 sysdeps/mach/hurd/not-cancel.h (limited to 'sysdeps/mach/hurd/not-cancel.h') diff --git a/sysdeps/mach/hurd/not-cancel.h b/sysdeps/mach/hurd/not-cancel.h new file mode 100644 index 0000000000..b78870a5b7 --- /dev/null +++ b/sysdeps/mach/hurd/not-cancel.h @@ -0,0 +1,62 @@ +/* Uncancelable versions of cancelable interfaces. Hurd version. + Copyright (C) 2003-2019 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper , 2003. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef NOT_CANCEL_H +# define NOT_CANCEL_H + +#include +#include +#include +#include +#include +#include +#include + +/* For now 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) + +static inline void +__close_nocancel_nostatus (int fd) +{ + HURD_FD_USE (fd, _hurd_fd_close (descriptor)); +} + +#define __read_nocancel(fd, buf, n) \ + __read (fd, buf, n) +#define __pread64_nocancel(fd, buf, count, offset) \ + __pread64 (fd, buf, count, offset) +#define __write_nocancel(fd, buf, n) \ + __write (fd, buf, n) +#define __writev_nocancel_nostatus(fd, iov, n) \ + (void) __writev (fd, iov, n) +# define __waitpid_nocancel(pid, stat_loc, options) \ + __waitpid (pid, stat_loc, options) +#define __fcntl64_nocancel(fd, cmd, ...) \ + __fcntl64 (fd, cmd, __VA_ARGS__) + +#endif /* NOT_CANCEL_H */ -- cgit 1.4.1