# File name	Caller	Syscall name	# args	Strong name	Weak names

umount2		-	umount		2	__umount2	umount2

getpriority	-	getpriority	i:ii	__getpriority	getpriority

# semaphore and shm system calls
msgctl		-	msgctl		i:iip	__msgctl	msgctl
msgget		-	msgget		i:ii	__msgget	msgget
msgrcv		-	msgrcv		Ci:ibnii __msgrcv	msgrcv
msgsnd		-	msgsnd		Ci:ibni	__msgsnd	msgsnd
shmat		-	shmat		i:ipi	__shmat		shmat
shmctl		-	shmctl		i:iip	__shmctl	shmctl
shmdt		-	shmdt		i:s	__shmdt		shmdt
shmget		-	shmget		i:iii	__shmget	shmget
semop		-	semop		i:ipi	__semop		semop
semtimedop	-	semtimedop	i:ipip	semtimedop
semget		-	semget		i:iii	__semget	semget
semctl		-	semctl		i:iiii	__semctl	semctl

# proper socket implementations:
accept		-	accept		Ci:iBN	__libc_accept	__accept accept
bind		-	bind		i:ipi	__bind		bind
connect		-	connect		Ci:ipi	__libc_connect	__connect_internal __connect connect
getpeername	-	getpeername	i:ipp	__getpeername	getpeername
getsockname	-	getsockname	i:ipp	__getsockname	getsockname
getsockopt	-	getsockopt	i:iiiBN	__getsockopt	getsockopt
listen		-	listen		i:ii	__listen	listen
recv		-	recv		Ci:ibni	__libc_recv	__recv recv
recvfrom	-	recvfrom	Ci:ibniBN	__libc_recvfrom	__recvfrom recvfrom
recvmsg		-	recvmsg		Ci:ipi	__libc_recvmsg	__recvmsg recvmsg
send		-	send		Ci:ibni	__libc_send	__send send
sendmsg		-	sendmsg		Ci:ipi	__libc_sendmsg	__sendmsg sendmsg
sendto		-	sendto		Ci:ibnibn	__libc_sendto	__sendto sendto
setsockopt	-	setsockopt	i:iiibn	__setsockopt	setsockopt
shutdown	-	shutdown	i:ii	__shutdown	shutdown
socket		-	socket		i:iii	__socket	socket
socketpair	-	socketpair	i:iiif	__socketpair	socketpair

# DIG-compliant access to PCI configuration space:
pciconfig_read	EXTRA	pciconfig_read	5	pciconfig_read
pciconfig_write	EXTRA	pciconfig_write	5	pciconfig_write

ptrace		-	ptrace		4	__ptrace	ptrace


# System calls with wrappers.

# IA-64 specific
getunwind	EXTRA	getunwind	i:pi	getunwind
