cvs commit: src/sys/emulation/43bsd 43bsd_socket.c src/sys/emulation/linux linux_socket.c src/sys/emulation/svr4 svr4_stream.c src/sys/kern init_sysent.c kern_subr.c syscalls.c syscalls.master uipc_syscalls.c src/sys/sys kern_syscall.h socketvar.h ...
David P. Reese
daver at crater.dragonflybsd.org
Tue Oct 7 18:30:51 PDT 2003
daver 2003/10/07 18:30:33 PDT
Modified files:
sys/emulation/43bsd 43bsd_socket.c
sys/emulation/linux linux_socket.c
sys/emulation/svr4 svr4_stream.c
sys/kern init_sysent.c kern_subr.c syscalls.c
syscalls.master uipc_syscalls.c
sys/sys kern_syscall.h socketvar.h syscall-hide.h
syscall.h syscall.mk sysproto.h
sysunion.h uio.h
Log:
Introduce the function iovec_copyin() and it's friend iovec_free().
These remove a great deal of duplicate code in the syscall functions.
For those who like numbers, this patch uses iovec_copyin() four times
in uipc_syscalls.c, two times in linux_socket.c and two times in
43bsd_socket.c. Would somebody please comment on the inclusion of
sys/malloc.h in sys/uio.h?
Remove sockargs() which was used once in the svr4 emulation code. It
is replaced with a small piece of code that gets an mbuf and copyin()'s
to it's data region.
Remove the osendfile() syscall which was inapropriately named and placed
in the COMPAT_43 code where it doesn't belong.
Split the socket(), shutdown() and sendfile() syscalls. All of the
syscalls in kern/uipc_syscalls.c are now split.
Prevent a panic due to m_freem()'ing a dangling pointer in recvmsg(),
orecvmsg(), linux_recvmsg().
This patch completely removes COMPAT_43 from kern/uipc_syscalls.c.
Revision Changes Path
1.4 +12 -47 src/sys/emulation/43bsd/43bsd_socket.c
1.13 +12 -46 src/sys/emulation/linux/linux_socket.c
1.10 +11 -3 src/sys/emulation/svr4/svr4_stream.c
1.8 +1 -1 src/sys/kern/init_sysent.c
1.12 +38 -0 src/sys/kern/kern_subr.c
1.8 +1 -1 src/sys/kern/syscalls.c
1.3 +2 -3 src/sys/kern/syscalls.master
1.18 +147 -198 src/sys/kern/uipc_syscalls.c
1.5 +7 -0 src/sys/sys/kern_syscall.h
1.6 +0 -1 src/sys/sys/socketvar.h
1.9 +0 -1 src/sys/sys/syscall-hide.h
1.9 +1 -1 src/sys/sys/syscall.h
1.9 +0 -0 src/sys/sys/syscall.mk
1.9 +0 -14 src/sys/sys/sysproto.h
1.6 +0 -3 src/sys/sys/sysunion.h
1.6 +13 -0 src/sys/sys/uio.h
More information about the Commits
mailing list