mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-22 04:50:07 +00:00
Update.
2002-12-16 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE macros instead of doing the calls directly. * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules. * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-% targets. 2002-12-16 Jakub Jelinek <jakub@redhat.com> * sysdeps/i386/fpu/bits/mathinline.h: Backout last change. * sysdeps/ieee754/bits/nan.h: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open, __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
This commit is contained in:
parent
e150fddc7c
commit
9634cf9d4f
16
ChangeLog
16
ChangeLog
@ -1,3 +1,19 @@
|
||||
2002-12-16 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
|
||||
macros instead of doing the calls directly.
|
||||
* sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
|
||||
* Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
|
||||
targets.
|
||||
|
||||
2002-12-16 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
|
||||
* sysdeps/ieee754/bits/nan.h: Likewise.
|
||||
|
||||
* sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
|
||||
__syscall_wait4, __syscall_ioctl, __syscall_write): Add.
|
||||
|
||||
2002-12-16 Roland McGrath <roland@redhat.com>
|
||||
|
||||
* sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
|
||||
|
@ -1,3 +1,44 @@
|
||||
2002-12-16 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* libc-cancellation.c: Guard both function with
|
||||
#if !defined NOT_IN_libc.
|
||||
* Makefile (libpthread-routines): Use ptw-, not pt- prefix for the
|
||||
automatically provided pthread wrappers.
|
||||
* pthreadP.h (LIBC_CANCEL_ASYNC, LIBC_CANCEL_RESET): Define to
|
||||
CANCEL_* if IS_IN_libpthread and to dummy versions if not in libc
|
||||
nor in libpthread.
|
||||
* pt-open.c: Removed.
|
||||
* pt-fcntl.c: Removed.
|
||||
* pt-fsync.c: Removed.
|
||||
* pt-lseek.c: Removed.
|
||||
* pt-msgrcv.c: Removed.
|
||||
* pt-msgsnd.c: Removed.
|
||||
* pt-msync.c: Removed.
|
||||
* pt-nanosleep.c: Removed.
|
||||
* pt-open64.c: Removed.
|
||||
* pt-pause.c: Removed.
|
||||
* pt-pread.c: Removed.
|
||||
* pt-pread64.c: Removed.
|
||||
* pt-pwrite.c: Removed.
|
||||
* pt-pwrite64.c: Removed.
|
||||
* pt-read.c: Removed.
|
||||
* pt-recv.c: Removed.
|
||||
* pt-recvfrom.c: Removed.
|
||||
* pt-recvmsg.c: Removed.
|
||||
* pt-send.c: Removed.
|
||||
* pt-sendto.c: Removed.
|
||||
* pt-sigtimedwait.c: Removed.
|
||||
* pt-sigwait.c: Removed.
|
||||
* pt-wait.c: Removed.
|
||||
* pt-waitpid.c: Removed.
|
||||
* pt-write.c: Removed.
|
||||
* pt-accept.c: Removed.
|
||||
* pt-close.c: Removed.
|
||||
* pt-connect.c: Removed.
|
||||
* pt-lseek64.c: Removed.
|
||||
* pt-sendmsg.c: Removed.
|
||||
* pt-tcdrain.c: Removed.
|
||||
|
||||
2002-12-15 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* init.c (__pthread_initialize_minimal_internal): Renamed from
|
||||
|
@ -94,13 +94,14 @@ libpthread-routines = init events \
|
||||
lowlevellock lowlevelmutex lowlevelcond lowlevelrwlock \
|
||||
lowlevelsem \
|
||||
pt-vfork \
|
||||
pt-write pt-read pt-close pt-fcntl pt-accept pt-connect \
|
||||
pt-recv pt-recvfrom pt-recvmsg pt-send pt-sendmsg \
|
||||
pt-sendto pt-fsync pt-lseek pt-lseek64 pt-msync \
|
||||
pt-nanosleep pt-open pt-open64 pt-pause pt-pread \
|
||||
pt-pread64 pt-pwrite pt-pwrite64 pt-tcdrain pt-system \
|
||||
pt-wait pt-waitpid pt-msgrcv pt-msgsnd pt-sigwait \
|
||||
pt-raise \
|
||||
ptw-write ptw-read ptw-close ptw-fcntl ptw-accept \
|
||||
ptw-connect ptw-recv ptw-recvfrom ptw-recvmsg ptw-send \
|
||||
ptw-sendmsg ptw-sendto ptw-fsync ptw-lseek ptw-llseek \
|
||||
ptw-msync ptw-nanosleep ptw-open ptw-open64 ptw-pause \
|
||||
ptw-pread ptw-pread64 ptw-pwrite ptw-pwrite64 \
|
||||
ptw-tcdrain ptw-wait ptw-waitpid ptw-msgrcv ptw-msgsnd \
|
||||
ptw-sigwait \
|
||||
pt-raise pt-system \
|
||||
flockfile ftrylockfile funlockfile \
|
||||
sigaction \
|
||||
herrno res pt-allocrtsig \
|
||||
|
@ -23,6 +23,8 @@
|
||||
#include "atomic.h"
|
||||
|
||||
|
||||
#if !defined NOT_IN_libc
|
||||
|
||||
/* The next two functions are similar to pthread_setcanceltype() but
|
||||
more specialized for the use in the cancelable functions like write().
|
||||
They do not need to check parameters etc. */
|
||||
@ -82,3 +84,5 @@ __libc_disable_asynccancel (int oldtype)
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@ -1,37 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <sys/socket.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
int
|
||||
accept (int fd, __SOCKADDR_ARG addr, socklen_t *addr_len)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
int result = __libc_accept (fd, addr, addr_len);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,42 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <unistd.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
int
|
||||
__close (int fd)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
#ifdef INLINE_SYSCALL
|
||||
int result = INLINE_SYSCALL (close, 1, fd);
|
||||
#else
|
||||
int result = __libc_close (fd);
|
||||
#endif
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
||||
strong_alias (__close, close)
|
@ -1,38 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <sys/socket.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
int
|
||||
__connect (int fd, __CONST_SOCKADDR_ARG addr, socklen_t addr_len)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
int result = __libc_connect (fd, addr, addr_len);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
||||
strong_alias (__connect, connect)
|
@ -1,53 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <unistd.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
int
|
||||
__fcntl (int fd, int cmd, ...)
|
||||
{
|
||||
int oldtype = 0;
|
||||
va_list ap;
|
||||
|
||||
if (cmd == F_SETLKW)
|
||||
oldtype = CANCEL_ASYNC ();
|
||||
|
||||
va_start (ap, cmd);
|
||||
|
||||
#ifdef INLINE_SYSCALL
|
||||
int result = INLINE_SYSCALL (fcntl64, 3, fd, cmd, va_arg (ap, long int));
|
||||
#else
|
||||
int result = __libc_fcntl (fd, cmd, va_arg (ap, long int));
|
||||
#endif
|
||||
|
||||
va_end (ap);
|
||||
|
||||
if (cmd == F_SETLKW)
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
||||
strong_alias (__fcntl, fcntl)
|
@ -1,41 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <unistd.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
int
|
||||
fsync (int fd)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
#ifdef INLINE_SYSCALL
|
||||
int result = INLINE_SYSCALL (fsync, 1, fd);
|
||||
#else
|
||||
int result = __libc_fsync (fd);
|
||||
#endif
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,42 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <unistd.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
off_t
|
||||
__lseek (int fd, off_t offset, int whence)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
#ifdef INLINE_SYSCALL
|
||||
off_t result = INLINE_SYSCALL (lseek, 3, fd, offset, whence);
|
||||
#else
|
||||
off_t result = __libc_lseek (fd, offset, whence);
|
||||
#endif
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
||||
strong_alias (__lseek, lseek)
|
@ -1,37 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <unistd.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
off64_t
|
||||
lseek64 (int fd, off64_t offset, int whence)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
off64_t result = __libc_lseek64 (fd, offset, whence);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,37 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <sys/msg.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
int
|
||||
msgrcv (int msqid, void *msgp, size_t msgsz, long int msgtyp, int msgflg)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
int result = __libc_msgrcv (msqid, msgp, msgsz, msgtyp, msgflg);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,43 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <sys/msg.h>
|
||||
#include <ipc_priv.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
int
|
||||
msgsnd (int msqid, const void *msgp, size_t msgsz, int msgflg)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
#if defined INLINE_SYSCALL && defined __NR_ipc
|
||||
int result = INLINE_SYSCALL (ipc, 5, IPCOP_msgsnd, msqid, msgsz,
|
||||
msgflg, (void *) msgp);
|
||||
#else
|
||||
int result = __libc_msgsnd (msqid, msgp, msgsz, msgflg);
|
||||
#endif
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,41 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <sys/mman.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
int
|
||||
msync (void *addr, size_t length, int flags)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
#ifdef INLINE_SYSCALL
|
||||
int result = INLINE_SYSCALL (msync, 3, addr, length, flags);
|
||||
#else
|
||||
int result = __libc_msync (addr, length, flags);
|
||||
#endif
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,42 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <time.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
int
|
||||
__nanosleep (const struct timespec *requested_time, struct timespec *remaining)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
#ifdef INLINE_SYSCALL
|
||||
int result = INLINE_SYSCALL (nanosleep, 2, requested_time, remaining);
|
||||
#else
|
||||
int result = __libc_nanosleep (requested_time, remaining);
|
||||
#endif
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
||||
strong_alias (__nanosleep, nanosleep)
|
@ -1,51 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdarg.h>
|
||||
#include <sysdep.h>
|
||||
#include <unistd.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
int
|
||||
__open (const char *pathname, int flags, ...)
|
||||
{
|
||||
va_list ap;
|
||||
|
||||
va_start (ap, flags);
|
||||
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
#ifdef INLINE_SYSCALL
|
||||
int result = INLINE_SYSCALL (open, 3, pathname, flags,
|
||||
va_arg (ap, __typeof ((mode_t) 0 + 0)));
|
||||
#else
|
||||
int result = __libc_open (pathname, flags,
|
||||
va_arg (ap, __typeof ((mode_t) 0 + 0)));
|
||||
#endif
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
va_end (ap);
|
||||
|
||||
return result;
|
||||
}
|
||||
strong_alias (__open, open)
|
@ -1,52 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdarg.h>
|
||||
#include <sysdep.h>
|
||||
#include <unistd.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
int
|
||||
__open64 (const char *pathname, int flags, ...)
|
||||
{
|
||||
va_list ap;
|
||||
|
||||
va_start (ap, flags);
|
||||
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
#if defined INLINE_SYSCALL && defined O_LARGEFILE
|
||||
int result = INLINE_SYSCALL (open, 3, pathname, flags | O_LARGEFILE,
|
||||
va_arg (ap, __typeof ((mode_t) 0 + 0)));
|
||||
#else
|
||||
int result = __libc_open64 (pathname, flags,
|
||||
va_arg (ap, __typeof ((mode_t) 0 + 0)));
|
||||
#endif
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
va_end (ap);
|
||||
|
||||
return result;
|
||||
}
|
||||
strong_alias (__open64, open64)
|
@ -1,37 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <unistd.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
int
|
||||
pause (void)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
int result = __libc_pause ();
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,37 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <unistd.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
ssize_t
|
||||
pread (int fd, void *buf, size_t count, off_t offset)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
ssize_t result = __libc_pread (fd, buf, count, offset);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,38 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <unistd.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
ssize_t
|
||||
__pread64 (int fd, void *buf, size_t count, off64_t offset)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
ssize_t result = __libc_pread64 (fd, buf, count, offset);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
||||
strong_alias (__pread64, pread64)
|
@ -1,37 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <unistd.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
ssize_t
|
||||
pwrite (int fd, const void *buf, size_t count, off_t offset)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
ssize_t result = __libc_pwrite (fd, buf, count, offset);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,38 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <unistd.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
ssize_t
|
||||
__pwrite64 (int fd, const void *buf, size_t count, off64_t offset)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
ssize_t result = __libc_pwrite64 (fd, buf, count, offset);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
||||
strong_alias (__pwrite64, pwrite64)
|
@ -1,42 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <unistd.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
ssize_t
|
||||
__read (int fd, void *buf, size_t count)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
#ifdef INLINE_SYSCALL
|
||||
ssize_t result = INLINE_SYSCALL (read, 3, fd, buf, count);
|
||||
#else
|
||||
ssize_t result = __libc_read (fd, buf, count);
|
||||
#endif
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
||||
strong_alias (__read, read)
|
@ -1,37 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <sys/socket.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
ssize_t
|
||||
recv (int fd, __ptr_t buf, size_t n, int flags)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
ssize_t result = __libc_recv (fd, buf, n, flags);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,38 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <sys/socket.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
ssize_t
|
||||
recvfrom (int fd, __ptr_t buf, size_t n, int flags, __SOCKADDR_ARG addr,
|
||||
socklen_t *addr_len)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
ssize_t result = __libc_recvfrom (fd, buf, n, flags, addr, addr_len);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,37 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <sys/socket.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
ssize_t
|
||||
recvmsg (int fd, struct msghdr *message, int flags)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
ssize_t result = __libc_recvmsg (fd, message, flags);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,38 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <sys/socket.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
ssize_t
|
||||
__send (int fd, const __ptr_t buf, size_t n, int flags)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
ssize_t result = __libc_send (fd, buf, n, flags);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
||||
strong_alias (__send, send)
|
@ -1,37 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <sys/socket.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
ssize_t
|
||||
sendmsg (int fd, const struct msghdr *message, int flags)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
ssize_t result = __libc_sendmsg (fd, message, flags);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,38 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <sys/socket.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
ssize_t
|
||||
sendto (int fd, const __ptr_t buf, size_t n, int flags,
|
||||
__CONST_SOCKADDR_ARG addr, socklen_t addr_len)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
ssize_t result = __libc_sendto (fd, buf, n, flags, addr, addr_len);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,43 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <unistd.h>
|
||||
#include <signal.h>
|
||||
#include <sysdep.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
int
|
||||
sigtimedwait (const sigset_t *set, siginfo_t *info,
|
||||
const struct timespec *timeout)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
#ifdef INLINE_SYSCALL
|
||||
int result = INLINE_SYSCALL (rt_sigtimedwait, 4, set, info, timeout,
|
||||
_NSIG / 8);
|
||||
#else
|
||||
int result = __sigtimedwait (set, info, timeout);
|
||||
#endif
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,58 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <unistd.h>
|
||||
#include <signal.h>
|
||||
#include <sysdep.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
int
|
||||
sigwait (const sigset_t *set, int *sig)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
#ifdef INTERNAL_SYSCALL
|
||||
int result = INTERNAL_SYSCALL (rt_sigtimedwait, 4, set, NULL, NULL,
|
||||
_NSIG / 8);
|
||||
if (! INTERNAL_SYSCALL_ERROR_P (result))
|
||||
{
|
||||
*sig = result;
|
||||
result = 0;
|
||||
}
|
||||
else
|
||||
result = INTERNAL_SYSCALL_ERRNO (result);
|
||||
#elif defined INLINE_SYSCALL
|
||||
int result = INLINE_SYSCALL (rt_sigtimedwait, 4, set, NULL, NULL, _NSIG / 8);
|
||||
if (result != -1)
|
||||
{
|
||||
*sig = result;
|
||||
result = 0;
|
||||
}
|
||||
else
|
||||
result = errno;
|
||||
#else
|
||||
int result = __sigwait (set, sig);
|
||||
#endif
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,37 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <termios.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
int
|
||||
tcdrain (int fd)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
int result = __libc_tcdrain (fd);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,38 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <sys/wait.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
pid_t
|
||||
__wait (__WAIT_STATUS_DEFN stat_loc)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
pid_t result = __libc_wait (stat_loc);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
||||
strong_alias (__wait, wait)
|
@ -1,37 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <sys/wait.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
pid_t
|
||||
waitpid (pid_t pid, int *stat_loc, int options)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
pid_t result = __libc_waitpid (pid, stat_loc, options);
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
@ -1,42 +0,0 @@
|
||||
/* Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
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, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <sysdep.h>
|
||||
#include <unistd.h>
|
||||
#include "pthreadP.h"
|
||||
|
||||
|
||||
ssize_t
|
||||
__write (int fd, const void *buf, size_t count)
|
||||
{
|
||||
int oldtype = CANCEL_ASYNC ();
|
||||
|
||||
#ifdef INLINE_SYSCALL
|
||||
ssize_t result = INLINE_SYSCALL (write, 3, fd, buf, count);
|
||||
#else
|
||||
ssize_t result = __libc_write (fd, buf, count);
|
||||
#endif
|
||||
|
||||
CANCEL_RESET (oldtype);
|
||||
|
||||
return result;
|
||||
}
|
||||
strong_alias (__write, write)
|
@ -129,12 +129,20 @@ extern struct pthread_functions __libc_pthread_functions attribute_hidden;
|
||||
#define CANCEL_RESET(oldtype) \
|
||||
__pthread_disable_asynccancel (oldtype)
|
||||
|
||||
#if !defined NOT_IN_libc
|
||||
/* Same as CANCEL_ASYNC, but for use in libc.so. */
|
||||
#define LIBC_CANCEL_ASYNC() \
|
||||
# define LIBC_CANCEL_ASYNC() \
|
||||
__libc_enable_asynccancel ()
|
||||
/* Same as CANCEL_RESET, but for use in libc.so. */
|
||||
#define LIBC_CANCEL_RESET(oldtype) \
|
||||
# define LIBC_CANCEL_RESET(oldtype) \
|
||||
__libc_disable_asynccancel (oldtype)
|
||||
#elif defined NOT_IN_libc && defined IS_IN_libpthread
|
||||
# define LIBC_CANCEL_ASYNC() CANCEL_ASYNC ()
|
||||
# define LIBC_CANCEL_RESET(val) CANCEL_RESET (val)
|
||||
#else
|
||||
# define LIBC_CANCEL_ASYNC() 0 /* Just a dummy value. */
|
||||
# define LIBC_CANCEL_RESET(val) ((void)(val)) /* Nothing, but evaluate it. */
|
||||
#endif
|
||||
|
||||
|
||||
/* This function is responsible for calling all registered cleanup
|
||||
|
@ -134,6 +134,7 @@ shared-only-routines += $file
|
||||
*)
|
||||
echo "\
|
||||
\$(foreach o,\$(object-suffixes),\$(objpfx)$file\$o) \
|
||||
\$(foreach o,\$(object-suffixes),\$(objpfx)ptw-$file\$o) \
|
||||
\$(objpfx)rtld-$file.os: \\"
|
||||
;;
|
||||
esac
|
||||
|
@ -76,7 +76,7 @@ L(pseudo_end):
|
||||
1: pushl %esi
|
||||
|
||||
/* Enable asynchronous cancellation. */
|
||||
call __libc_enable_asynccancel /* No @plt */
|
||||
CENABLE
|
||||
movl %eax, %esi
|
||||
|
||||
/* Save registers. */
|
||||
@ -93,7 +93,7 @@ L(pseudo_end):
|
||||
|
||||
/* Restore the cancellation. */
|
||||
xchgl %esi, %eax
|
||||
call __libc_disable_asynccancel /* No @plt */
|
||||
CDISABLE
|
||||
|
||||
/* Restore registers. */
|
||||
movl %esi, %eax
|
||||
|
@ -81,6 +81,10 @@ s_stat xstat stat i:sp __syscall_stat
|
||||
s_lstat lxstat lstat i:sp __syscall_lstat
|
||||
s_fstat fxstat fstat i:ip __syscall_fstat
|
||||
s_sysctl sysctl _sysctl i:p __syscall__sysctl
|
||||
s_open open open i:siv __syscall_open
|
||||
s_wait4 wait4 wait4 i:iWiP __syscall_wait4
|
||||
s_ioctl ioctl ioctl i:iiI __syscall_ioctl
|
||||
s_write write write i:ibn __syscall_write
|
||||
|
||||
# IA-64 specific
|
||||
getunwind EXTRA getunwind i:pi getunwind
|
||||
|
Loading…
Reference in New Issue
Block a user