From dcbff4072b6b3e79d768e50c2d58ccc8e307b1bd Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Sun, 16 Jul 2017 11:34:54 +0200 Subject: nptl: remove sysdep-cancel ASM macros, convert to C --- libpthread/nptl/sysdeps/unix/sysv/linux/accept.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/accept.c (limited to 'libpthread/nptl/sysdeps/unix/sysv/linux/accept.c') diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/accept.c b/libpthread/nptl/sysdeps/unix/sysv/linux/accept.c new file mode 100644 index 000000000..edc110371 --- /dev/null +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/accept.c @@ -0,0 +1,23 @@ +/* + * Copyright (C) 2017 Waldemar Brodkorb + * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. + */ + +#include +#include + +#ifndef __NR_accept +#error Missing definition of NR_accept needed for cancellation. +#endif + +int +accept (int fd, __SOCKADDR_ARG addr, socklen_t *len) +{ + return _syscall3(int, __NC(accept), int, fd, __SOCKADDR_ARG, + addr.__sockaddr__, socklen_t*, len); +} + +CANCELLABLE_SYSCALL(int, accept, (int fd, __SOCKADDR_ARG addr, + socklen_t *len), (fd, addr, len)) + +lt_libc_hidden(accept) -- cgit v1.2.3