1
0
Fork 0
mirror of https://gitlab.com/sortix/sortix.git synced 2023-02-13 20:55:38 -05:00
sortix--sortix/regress
Jonas 'Sortie' Termansen 3c43f71084 Implement file descriptor passing.
This change refactors the Unix socket / pipe backend to have a ring buffer
containing segments, where each segment has an optional leading ancillary
buffer containing control messages followed by a normal data buffer.

The SCM_RIGHTS control message has been implemented which transfers file
descriptors to the receiving process. File descriptors are reference counted
and cycles are prevented using the following restrictions:

1) Unix sockets cannot be sent on themselves (on either end).
2) Unix sockets themselves being sent cannot be sent on.
3) Unix sockets cannot send a Unix socket being sent on.

This is a compatible ABI change.
2021-12-31 22:24:11 +01:00
..
.gitignore Convert regress to C. 2016-03-03 23:02:24 +01:00
Makefile Implement file descriptor passing. 2021-12-31 22:24:11 +01:00
regress.c Fix code assuming struct winsize fields are size_t. 2018-08-06 23:59:35 +02:00
test-fmemopen.c Refactor testcase API. 2017-12-04 23:56:47 +01:00
test-pipe-one-byte.c Refactor testcase API. 2017-12-04 23:56:47 +01:00
test-pthread-argv.c Refactor testcase API. 2017-12-04 23:56:47 +01:00
test-pthread-basic.c Refactor testcase API. 2017-12-04 23:56:47 +01:00
test-pthread-main-exit.c Refactor testcase API. 2017-12-04 23:56:47 +01:00
test-pthread-main-join.c Refactor testcase API. 2017-12-04 23:56:47 +01:00
test-pthread-once.c Refactor testcase API. 2017-12-04 23:56:47 +01:00
test-pthread-self.c Refactor testcase API. 2017-12-04 23:56:47 +01:00
test-pthread-tls.c Refactor testcase API. 2017-12-04 23:56:47 +01:00
test-signal-raise.c Refactor testcase API. 2017-12-04 23:56:47 +01:00
test-unix-socket-fd-cycle.c Implement file descriptor passing. 2021-12-31 22:24:11 +01:00
test-unix-socket-fd-leak.c Implement file descriptor passing. 2021-12-31 22:24:11 +01:00
test-unix-socket-fd-pass.c Implement file descriptor passing. 2021-12-31 22:24:11 +01:00
test-unix-socket-fd-trunc.c Implement file descriptor passing. 2021-12-31 22:24:11 +01:00
test-unix-socket-name.c Implement getpeername(2) and getsockname(2). 2017-02-26 22:24:35 +01:00
test-unix-socket-shutdown.c Refactor testcase API. 2017-12-04 23:56:47 +01:00
test.h Implement file descriptor passing. 2021-12-31 22:24:11 +01:00