1d201fe46SDaniel Eischen /* 2d201fe46SDaniel Eischen * Copyright (c) 2001 Daniel Eischen <deischen@FreeBSD.org>. 3d201fe46SDaniel Eischen * All rights reserved. 4d201fe46SDaniel Eischen * 5d201fe46SDaniel Eischen * Redistribution and use in source and binary forms, with or without 6d201fe46SDaniel Eischen * modification, are permitted provided that the following conditions 7d201fe46SDaniel Eischen * are met: 8d201fe46SDaniel Eischen * 1. Redistributions of source code must retain the above copyright 9d201fe46SDaniel Eischen * notice, this list of conditions and the following disclaimer. 10d201fe46SDaniel Eischen * 2. Redistributions in binary form must reproduce the above copyright 11d201fe46SDaniel Eischen * notice, this list of conditions and the following disclaimer in the 12d201fe46SDaniel Eischen * documentation and/or other materials provided with the distribution. 13d201fe46SDaniel Eischen * 14d201fe46SDaniel Eischen * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15d201fe46SDaniel Eischen * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16d201fe46SDaniel Eischen * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17d201fe46SDaniel Eischen * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 18d201fe46SDaniel Eischen * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19d201fe46SDaniel Eischen * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20d201fe46SDaniel Eischen * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21d201fe46SDaniel Eischen * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22d201fe46SDaniel Eischen * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23d201fe46SDaniel Eischen * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24d201fe46SDaniel Eischen * SUCH DAMAGE. 25d201fe46SDaniel Eischen * 26d201fe46SDaniel Eischen * $FreeBSD$ 27d201fe46SDaniel Eischen * 28d201fe46SDaniel Eischen */ 29d201fe46SDaniel Eischen 30d201fe46SDaniel Eischen #ifndef _NAMESPACE_H_ 31d201fe46SDaniel Eischen #define _NAMESPACE_H_ 32d201fe46SDaniel Eischen 33d201fe46SDaniel Eischen /* 34d201fe46SDaniel Eischen * Prototypes for syscalls/functions that need to be overridden 35d201fe46SDaniel Eischen * in libc_r/libpthread. 36d201fe46SDaniel Eischen */ 37d201fe46SDaniel Eischen #define accept _accept 38d201fe46SDaniel Eischen #define bind _bind 39d201fe46SDaniel Eischen #define close _close 40d201fe46SDaniel Eischen #define connect _connect 41d201fe46SDaniel Eischen #define dup _dup 42d201fe46SDaniel Eischen #define dup2 _dup2 43d201fe46SDaniel Eischen #define execve _execve 44d201fe46SDaniel Eischen #define fcntl _fcntl 45d201fe46SDaniel Eischen /*#define flock _flock */ 46d201fe46SDaniel Eischen #define flockfile _flockfile 47d201fe46SDaniel Eischen #define fstat _fstat 48d201fe46SDaniel Eischen #define fstatfs _fstatfs 49d201fe46SDaniel Eischen #define fsync _fsync 50d201fe46SDaniel Eischen #define funlockfile _funlockfile 51d201fe46SDaniel Eischen #define getdirentries _getdirentries 52d201fe46SDaniel Eischen #define getlogin _getlogin 53d201fe46SDaniel Eischen #define getpeername _getpeername 54d201fe46SDaniel Eischen #define getsockname _getsockname 55d201fe46SDaniel Eischen #define getsockopt _getsockopt 56d201fe46SDaniel Eischen #define ioctl _ioctl 57d201fe46SDaniel Eischen /* #define kevent _kevent */ 58d201fe46SDaniel Eischen #define listen _listen 59d201fe46SDaniel Eischen #define nanosleep _nanosleep 60d201fe46SDaniel Eischen #define open _open 618360efbdSAlfred Perlstein #define poll _poll 628360efbdSAlfred Perlstein #define pthread_cond_signal _pthread_cond_signal 638360efbdSAlfred Perlstein #define pthread_cond_wait _pthread_cond_wait 648360efbdSAlfred Perlstein #define pthread_cond_init _pthread_cond_init 658360efbdSAlfred Perlstein #define pthread_exit _pthread_exit 66d201fe46SDaniel Eischen #define pthread_getspecific _pthread_getspecific 67d201fe46SDaniel Eischen #define pthread_key_create _pthread_key_create 68d201fe46SDaniel Eischen #define pthread_key_delete _pthread_key_delete 698360efbdSAlfred Perlstein #define pthread_main_np _pthread_main_np 70d201fe46SDaniel Eischen #define pthread_mutex_destroy _pthread_mutex_destroy 71d201fe46SDaniel Eischen #define pthread_mutex_init _pthread_mutex_init 72d201fe46SDaniel Eischen #define pthread_mutex_lock _pthread_mutex_lock 73d201fe46SDaniel Eischen #define pthread_mutex_trylock _pthread_mutex_trylock 74d201fe46SDaniel Eischen #define pthread_mutex_unlock _pthread_mutex_unlock 75d201fe46SDaniel Eischen #define pthread_mutexattr_init _pthread_mutexattr_init 76d201fe46SDaniel Eischen #define pthread_mutexattr_destroy _pthread_mutexattr_destroy 77d201fe46SDaniel Eischen #define pthread_mutexattr_settype _pthread_mutexattr_settype 78d201fe46SDaniel Eischen #define pthread_once _pthread_once 798360efbdSAlfred Perlstein #define pthread_rwlock_init _pthread_rwlock_init 808360efbdSAlfred Perlstein #define pthread_rwlock_rdlock _pthread_rwlock_rdlock 818360efbdSAlfred Perlstein #define pthread_rwlock_wrlock _pthread_rwlock_wrlock 828360efbdSAlfred Perlstein #define pthread_rwlock_unlock _pthread_rwlock_unlock 8329ac6bd2SDaniel Eischen #define pthread_self _pthread_self 84d201fe46SDaniel Eischen #define pthread_setspecific _pthread_setspecific 858360efbdSAlfred Perlstein #define pthread_sigmask _pthread_sigmask 86d201fe46SDaniel Eischen #define read _read 87d201fe46SDaniel Eischen #define readv _readv 88d201fe46SDaniel Eischen #define recvfrom _recvfrom 89d201fe46SDaniel Eischen #define recvmsg _recvmsg 90d201fe46SDaniel Eischen #define select _select 91d201fe46SDaniel Eischen #define sendmsg _sendmsg 92d201fe46SDaniel Eischen #define sendto _sendto 93d201fe46SDaniel Eischen #define setsockopt _setsockopt 94d201fe46SDaniel Eischen /*#define sigaction _sigaction*/ 95d201fe46SDaniel Eischen #define sigprocmask _sigprocmask 96d201fe46SDaniel Eischen #define sigsuspend _sigsuspend 97d201fe46SDaniel Eischen #define socket _socket 98d201fe46SDaniel Eischen #define socketpair _socketpair 99d201fe46SDaniel Eischen #define wait4 _wait4 100d201fe46SDaniel Eischen #define write _write 101d201fe46SDaniel Eischen #define writev _writev 102d201fe46SDaniel Eischen 103d201fe46SDaniel Eischen 104d201fe46SDaniel Eischen /* 105d201fe46SDaniel Eischen * Other hidden syscalls/functions that libc_r needs to override 106d201fe46SDaniel Eischen * but are not used internally by libc. 107d201fe46SDaniel Eischen * 108d201fe46SDaniel Eischen * XXX - When modifying libc to use one of the following, remove 109d201fe46SDaniel Eischen * the prototype from below and place it in the list above. 110d201fe46SDaniel Eischen */ 111d201fe46SDaniel Eischen #if 0 112d201fe46SDaniel Eischen #define creat _creat 113d201fe46SDaniel Eischen #define fchflags _fchflags 114d201fe46SDaniel Eischen #define fchmod _fchmod 115d201fe46SDaniel Eischen #define fpathconf _fpathconf 116d201fe46SDaniel Eischen #define ftrylockfile _ftrylockfile 117d201fe46SDaniel Eischen #define msync _msync 118d201fe46SDaniel Eischen #define nfssvc _nfssvc 119d201fe46SDaniel Eischen #define pause _pause 120d201fe46SDaniel Eischen #define pthread_rwlock_destroy _pthread_rwlock_destroy 121d201fe46SDaniel Eischen #define pthread_rwlock_tryrdlock _pthread_rwlock_tryrdlock 122d201fe46SDaniel Eischen #define pthread_rwlock_trywrlock _pthread_rwlock_trywrlock 123d201fe46SDaniel Eischen #define pthread_rwlockattr_init _pthread_rwlockattr_init 124d201fe46SDaniel Eischen #define pthread_rwlockattr_destroy _pthread_rwlockattr_destroy 125d201fe46SDaniel Eischen #define sched_yield _sched_yield 126d201fe46SDaniel Eischen #define sendfile _sendfile 127d201fe46SDaniel Eischen #define shutdown _shutdown 128d201fe46SDaniel Eischen #define sigaltstack _sigaltstack 129d201fe46SDaniel Eischen #define signanosleep _signanosleep 130d201fe46SDaniel Eischen #define sigpending _sigpending 131d201fe46SDaniel Eischen #define sigreturn _sigreturn 132d201fe46SDaniel Eischen #define sigsetmask _sigsetmask 133d201fe46SDaniel Eischen #define sleep _sleep 134d201fe46SDaniel Eischen #define system _system 135d201fe46SDaniel Eischen #define tcdrain _tcdrain 136d201fe46SDaniel Eischen #define wait _wait 137d201fe46SDaniel Eischen #define waitpid _waitpid 138d201fe46SDaniel Eischen #endif 139d201fe46SDaniel Eischen 140d201fe46SDaniel Eischen #endif /* _NAMESPACE_H_ */ 141