gvisor/pkg/sentry
Brian Geffon 4fd1d40e1d Rpcinet needs to track shutdown state for blocking sockets.
Because rpcinet will emulate a blocking socket backed by an rpc based
non-blocking socket. In the event of a shutdown(SHUT_RD) followed by a
read a non-blocking socket is allowed to return an EWOULDBLOCK however
since a blocking socket knows it cannot receive anymore data it would
block indefinitely and in this situation linux returns 0. We have to
track this on the rpcinet sentry side so we can emulate that behavior
because the remote side has no way to know if the socket is actually
blocking within the sentry.

PiperOrigin-RevId: 201201618
Change-Id: I4ac3a7b74b5dae471ab97c2e7d33b83f425aedac
2018-06-19 10:43:30 -07:00
..
arch Fix sigaltstack semantics. 2018-06-08 15:01:21 -07:00
context Implement sysv shm. 2018-05-17 15:06:19 -07:00
control Added a function to the controller to checkpoint a container. 2018-06-06 11:43:55 -07:00
device Check in gVisor. 2018-04-28 01:44:26 -04:00
fs Replace crypto/rand with internal rand package 2018-06-15 15:36:00 -07:00
hostcpu Check in gVisor. 2018-04-28 01:44:26 -04:00
inet sentry: Replaces saving of inet.Stack with retrieval via context. 2018-05-15 14:56:18 -07:00
kernel FIFOs should support O_TRUNC as a no-op. 2018-06-15 12:55:29 -07:00
limits Check in gVisor. 2018-04-28 01:44:26 -04:00
loader Replace crypto/rand with internal rand package 2018-06-15 15:36:00 -07:00
memmap Implement MAP_32BIT. 2018-05-11 11:18:31 -07:00
memutil Check in gVisor. 2018-04-28 01:44:26 -04:00
mm Implement sysv shm. 2018-05-17 15:06:19 -07:00
platform Use notify explicitly on unlock path. 2018-06-15 09:30:08 -07:00
safemem Check in gVisor. 2018-04-28 01:44:26 -04:00
sighandling sentry: do not start delivering external signal immediately. 2018-06-15 13:38:14 -07:00
socket Rpcinet needs to track shutdown state for blocking sockets. 2018-06-19 10:43:30 -07:00
state sentry: do not treat all save errors as state file errors. 2018-06-13 10:14:15 -07:00
strace Clean up control message strace logging 2018-05-03 16:26:23 -07:00
syscalls Replace crypto/rand with internal rand package 2018-06-15 15:36:00 -07:00
time Check in gVisor. 2018-04-28 01:44:26 -04:00
uniqueid Check in gVisor. 2018-04-28 01:44:26 -04:00
usage Fix misspellings 2018-05-07 16:38:01 -07:00
usermem Check in gVisor. 2018-04-28 01:44:26 -04:00
watchdog Check in gVisor. 2018-04-28 01:44:26 -04:00
BUILD Check in gVisor. 2018-04-28 01:44:26 -04:00