#
e3b8d4bb |
| 21-Feb-2016 |
David van Moolenbroek <david@minix3.org> |
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 fo
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
show more ...
|
#
27d0ecdb |
| 26-Aug-2014 |
David van Moolenbroek <david@minix3.org> |
VFS: unbreak select on /dev/tty
The remapping from /dev/tty to the real controlling terminal in the device code was confusing the select code. The latter is now aware of this case and should handle
VFS: unbreak select on /dev/tty
The remapping from /dev/tty to the real controlling terminal in the device code was confusing the select code. The latter is now aware of this case and should handle it properly, at the cost of one extra field in the filp structure.
There is a nasty, hopefully sufficiently rare case of /dev/tty being kept open while controlling terminals are changing, that we are still not handling. Doing so would require more than just a few changes, but the code should at least detect and cleanly fail on this case.
Test77 now has a basic test set for selecting on /dev/tty.
Change-Id: Iaedea449cdb728d0e66a9de8faacdfd9638dfe92
show more ...
|