diff options
author | Ulrich Drepper <drepper@redhat.com> | 2006-01-21 08:21:04 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2006-01-21 08:21:04 +0000 |
commit | 5c983cdd089ef485b6f903efcf9e597eb1cb37ab (patch) | |
tree | 9006a5251d9cbab218850bd9939b0c6e417444da /sysdeps/unix/sysv/linux/i386/pselect.c | |
parent | e6c8af451f8ccdbd28ea6e8419eedb5551ba4c48 (diff) | |
download | glibc-5c983cdd089ef485b6f903efcf9e597eb1cb37ab.tar.gz glibc-5c983cdd089ef485b6f903efcf9e597eb1cb37ab.tar.xz glibc-5c983cdd089ef485b6f903efcf9e597eb1cb37ab.zip |
* sysdeps/unix/sysv/linux/pselect.c (__pselect): Allow actual
system call code to be redefined in macro CALL_PSELECT6. * sysdeps/unix/sysv/linux/i386/Makefile [subdir=misc] (sysdep_routines): Add call_pselect6. * sysdeps/unix/sysv/linux/i386/call_pselect6.c: New file. * sysdeps/unix/sysv/linux/i386/pselect.c: New file. * misc/Makefile (tests): Add tst-pselect. * misc/tst-pselect.c: New file. * sysdeps/unix/sysv/linux/pselect.c: Fix typo in declaration. * sysdeps/unix/sysv/linux/xmknodat.c (__xmknodat): Cast k_dev value to unsigned int to match kernel.
Diffstat (limited to 'sysdeps/unix/sysv/linux/i386/pselect.c')
-rw-r--r-- | sysdeps/unix/sysv/linux/i386/pselect.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/linux/i386/pselect.c b/sysdeps/unix/sysv/linux/i386/pselect.c new file mode 100644 index 0000000000..2646608786 --- /dev/null +++ b/sysdeps/unix/sysv/linux/i386/pselect.c @@ -0,0 +1,18 @@ +#include <sys/select.h> + +extern int __call_pselect6 (int nfds, fd_set *readfds, fd_set *writefds, + fd_set *exceptfds, const struct timespec *timeout, + void *data) attribute_hidden; + + +#define CALL_PSELECT6(nfds, readfds, writefds, exceptfds, timeout, data) \ + ({ int r = __call_pselect6 (nfds, readfds, writefds, exceptfds, timeout, \ + data); \ + if (r < 0 && r > -4096) \ + { \ + __set_errno (-r); \ + r = -1; \ + } \ + r; }) + +#include "../pselect.c" |