]> Zhao Yanbai Git Server - minix.git/commit
VFS: add BSD socket API, socket driver support 18/3418/1
authorDavid van Moolenbroek <david@minix3.org>
Sun, 21 Feb 2016 19:28:24 +0000 (19:28 +0000)
committerDavid van Moolenbroek <david@minix3.org>
Thu, 9 Mar 2017 23:39:49 +0000 (23:39 +0000)
commite3b8d4bb58a799dc7fd563ac39bf3015762af03b
tree4979003451350a53fc1398d0ad358827ecf1a26b
parent181fb1b2b562251d07c6fcffd262fd8efbcd2ee0
VFS: add BSD socket API, socket driver support

This patch adds the implementation of the BSD socket system calls
which have been introduced in an earlier patch.  At the same time, it
adds support for communication with socket drivers, using a new
"socket device" (SDEV_) protocol.  These two parts, implemented in
socket.c and sdev.c respectively, form the upper and lower halves of
the new BSD socket support in VFS.  New mapping functionality for
socket domains and drivers is added as well, implemented in smap.c.

The rest of the changes mainly facilitate the separation of character
and socket driver calls, and do not make any fundamental alterations.
For example, while this patch changes VFS's select.c rather heavily,
the new select logic for socket drivers is the exact same as for
character drivers; the changes mainly separate the driver type
specific parts from the generic select logic further than before.

Change-Id: I2f13084dd3c8d3a68bfc69da0621120c8291f707
27 files changed:
minix/fs/pfs/pfs.c
minix/include/minix/com.h
minix/include/minix/ipc.h
minix/servers/is/dmp_fs.c
minix/servers/mib/proc.c
minix/servers/vfs/Makefile
minix/servers/vfs/README
minix/servers/vfs/bdev.c
minix/servers/vfs/cdev.c
minix/servers/vfs/comm.c
minix/servers/vfs/const.h
minix/servers/vfs/device.c
minix/servers/vfs/dmap.c
minix/servers/vfs/file.h
minix/servers/vfs/filedes.c
minix/servers/vfs/fproc.h
minix/servers/vfs/fs.h
minix/servers/vfs/main.c
minix/servers/vfs/misc.c
minix/servers/vfs/pipe.c
minix/servers/vfs/proto.h
minix/servers/vfs/read.c
minix/servers/vfs/sdev.c [new file with mode: 0644]
minix/servers/vfs/select.c
minix/servers/vfs/smap.c [new file with mode: 0644]
minix/servers/vfs/socket.c
minix/servers/vfs/type.h