summaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/signalfd.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2007-10-05 18:55:57 +0000
committerUlrich Drepper <drepper@redhat.com>2007-10-05 18:55:57 +0000
commit8e351378b76880f861bdcda8fc11d5769e310a00 (patch)
tree8b5cdf257a578de0f84c9c9d0ecb4ad9f6544e7c /sysdeps/unix/sysv/linux/signalfd.c
parent34c2c09296bfb369df9973cf8a4098b6ec526059 (diff)
* sysdeps/gnu/netinet/tcp.h: Define TCP_MD5SIG, TCP_MD5SIG_MAXKEYLEN,
struct tcp_md5sig. Extend struct tcp_info according to recent kernels. * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add eventfd, evetnfd_read, eventfd_write. * sysdeps/unix/sysv/linux/eventfd.c: New file. * sysdeps/unix/sysv/linux/eventfd_read.c: New file. * sysdeps/unix/sysv/linux/eventfd_write.c: New file. * sysdeps/unix/sysv/linux/sys/eventfd.h: New file. * sysdeps/unix/sysv/linux/Versions: Export eventfd, evetnfd_read, eventfd_write for GLIBC_2.7.
Diffstat (limited to 'sysdeps/unix/sysv/linux/signalfd.c')
-rw-r--r--sysdeps/unix/sysv/linux/signalfd.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/sysdeps/unix/sysv/linux/signalfd.c b/sysdeps/unix/sysv/linux/signalfd.c
index cdde278e9a..09355ecd1d 100644
--- a/sysdeps/unix/sysv/linux/signalfd.c
+++ b/sysdeps/unix/sysv/linux/signalfd.c
@@ -23,8 +23,18 @@
int
-signalfd (int fd, const sigset_t *mask)
+signalfd (int fd, const sigset_t *mask, int flags)
{
+ /* The system call has no flag parameter which is bad. So we have
+ to wait until we have to support to pass additional values to the
+ kernel (sys_indirect) before implementing setting flags like
+ O_NONBLOCK etc. */
+ if (flags != 0)
+ {
+ __set_errno (EINVAL);
+ return -1;
+ }
+
#ifdef __NR_signalfd
return INLINE_SYSCALL (signalfd, 3, fd, mask, _NSIG / 8);
#else