From: Samuel Thibault Date: Fri, 13 Dec 2019 02:23:14 +0000 (+0100) Subject: hurd: Implement __close_nocancel_nostatus X-Git-Tag: glibc-2.31~136 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c1f25758c353fcb16076512aba62746bff2e0d2d;p=thirdparty%2Fglibc.git hurd: Implement __close_nocancel_nostatus * sysdeps/mach/hurd/not-cancel.h: New file. --- diff --git a/sysdeps/mach/hurd/not-cancel.h b/sysdeps/mach/hurd/not-cancel.h new file mode 100644 index 00000000000..b78870a5b71 --- /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 */