mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-30 08:40:07 +00:00
60f9423b6b
This patch consolidates the send Linux syscall implementation on sysdeps/unix/sysv/linux/send{to}.c. The changes are: 1. Remove send from auto-generation syscalls.list on the architecture that uses __NR_send. 2. Define __NR_send for architectures that supports it. It was done instead of defining in default kernel-features.h because current Linux practice for new ports are to implement only __NR_sendto [1] and it will require adding new kernel-features for ports that do not require it (aarch64 for instance). 3. Remove __ASSUME_SENDTO_FOR_SEND_SYSCALL and decide to use __NR_sendto for send generation based on __ASSUME_SENDTO_SYSCALL. Checked on i686-linux-gnu, x86_64-linux-gnu, x86_64-linux-gnux32, aarch64-linux-gnu, arm-linux-gnueabihf, and powerpc64le-linux-gnu. * sysdeps/unix/sysv/linux/sysdep.h (HAVE_INTERNAL_SEND_SYMBOL): Define. * sysdeps/unix/sysv/linux/aarch64/sysdep.h (HAVE_INTERNAL_SEND_SYMBOL): Undefine. * sysdeps/unix/sysv/linux/nios2/sysdep.h (HAVE_INTERNAL_SEND_SYMBOL): Likewise. * sysdeps/unix/sysv/linux/tile/sysdep.h (HAVE_INTERNAL_SEND_SYMBOL): Likewise. * sysdeps/unix/sysv/linux/alpha/kernel-features.h (__ASSUME_RECV_SYSCALL): Define. * sysdeps/unix/sysv/linux/arm/kernel-features.h (__ASSUME_RECV_SYSCALL): Likewise. * sysdeps/unix/sysv/linux/hppa/kernel-features.h (__ASSUME_RECV_SYSCALL): Likewise. * sysdeps/unix/sysv/linux/ia64/kernel-features.h (__ASSUME_RECV_SYSCALL): Likewise. * sysdeps/unix/sysv/linux/mips/kernel-features.h (__ASSUME_RECV_SYSCALL): Likewise. * sysdeps/unix/sysv/linux/i386/kernel-features.h (__ASSUME_SENDTO_FOR_SEND_SYSCALL): Remove define. * sysdeps/unix/sysv/linux/m68k/kernel-features.h (__ASSUME_SENDTO_FOR_SEND_SYSCALL): Likewise. * sysdeps/unix/sysv/linux/s390/kernel-features.h (__ASSUME_SENDTO_FOR_SEND_SYSCALL): Likewise. * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove send from auto-generation list. * sysdeps/unix/sysv/linux/arm/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewike. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/send.c: Simplify includes. (__ASSUME_SENDTO_FOR_SEND_SYSCALL): Replace by __ASSUME_SENDTO_SYSCALL. * sysdeps/unix/sysv/linux/x86_64/send.c: Remove file. * sysdeps/unix/sysv/linux/mips/mips64/send.c: Likewise. * sysdeps/unix/sysv/linux/generic/send.c: Likewise.
48 lines
2.2 KiB
Plaintext
48 lines
2.2 KiB
Plaintext
# File name Caller Syscall name # args Strong name Weak names
|
|
|
|
sigstack - sigstack 2 sigstack
|
|
|
|
getpriority - getpriority i:ii __getpriority getpriority
|
|
|
|
# proper socket implementations:
|
|
bind - bind i:ipi __bind bind
|
|
getpeername - getpeername i:ipp __getpeername getpeername
|
|
getsockname - getsockname i:ipp __getsockname getsockname
|
|
getsockopt - getsockopt i:iiiBN __getsockopt getsockopt
|
|
listen - listen i:ii __listen listen
|
|
setsockopt - setsockopt i:iiibn __setsockopt setsockopt
|
|
shutdown - shutdown i:ii __shutdown shutdown
|
|
socket - socket i:iii __socket socket
|
|
socketpair - socketpair i:iiif __socketpair socketpair
|
|
|
|
ptrace - ptrace 4 __ptrace ptrace
|
|
|
|
# access pci space protected from machine checks:
|
|
pciconfig_read EXTRA pciconfig_read 5 pciconfig_read
|
|
pciconfig_write EXTRA pciconfig_write 5 pciconfig_write
|
|
pciconfig_iobase EXTRA pciconfig_iobase 3 __pciconfig_iobase pciconfig_iobase
|
|
|
|
# support old timeval32 entry points
|
|
osf_select - osf_select C:5 __select_tv32 __select@GLIBC_2.0 select@GLIBC_2.0
|
|
osf_gettimeofday - osf_gettimeofday 2 __gettimeofday_tv32 __gettimeofday@GLIBC_2.0 gettimeofday@GLIBC_2.0
|
|
osf_settimeofday - osf_settimeofday 2 __settimeofday_tv32 settimeofday@GLIBC_2.0
|
|
osf_getitimer - osf_getitimer 2 __getitimer_tv32 getitimer@GLIBC_2.0
|
|
osf_setitimer - osf_setitimer 3 __setitimer_tv32 setitimer@GLIBC_2.0
|
|
osf_utimes - osf_utimes 2 __utimes_tv32 utimes@GLIBC_2.0
|
|
osf_getrusage - osf_getrusage 2 __getrusage_tv32 getrusage@GLIBC_2.0
|
|
osf_wait4 - osf_wait4 4 __wait4_tv32 wait4@GLIBC_2.0
|
|
|
|
# support new timeval64 entry points
|
|
select - select C:5 __GI___select select@@GLIBC_2.1 __select@@GLIBC_2.1
|
|
gettimeofday - gettimeofday 2 __GI___gettimeofday gettimeofday@@GLIBC_2.1 __gettimeofday@@GLIBC_2.1
|
|
settimeofday - settimeofday 2 __settimeofday settimeofday@@GLIBC_2.1
|
|
getitimer - getitimer 2 __getitimer getitimer@@GLIBC_2.1
|
|
setitimer - setitimer 3 __setitimer setitimer@@GLIBC_2.1
|
|
utimes - utimes 2 __utimes utimes@@GLIBC_2.1
|
|
getrusage - getrusage 2 __getrusage getrusage@@GLIBC_2.1
|
|
wait4 - wait4 4 __wait4 wait4@@GLIBC_2.1
|
|
|
|
# avoid 64-bit aliases on 32-bit statfs syscalls
|
|
fstatfs - fstatfs i:ip __fstatfs fstatfs
|
|
statfs - statfs i:sp __statfs statfs
|