1
0
Fork 0
mirror of https://gitlab.com/sortix/sortix.git synced 2023-02-13 20:55:38 -05:00
sortix--sortix/libc/include/sys
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
..
__ Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
cdefs.h Add restartable system calls compatibility macro. 2017-12-04 23:56:47 +01:00
display.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
dnsconfig.h Add getdnsconfig(2) and setdnsconfig(2). 2021-06-13 23:27:52 +02:00
futex.h Implement threading primitives that truly sleep. 2021-06-23 22:10:47 +02:00
ioctl.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
kernelinfo.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
keycodes.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
mman.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
mount.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
ps2mouse.h Add header for working with the PS/2 mouse protocol. 2021-12-12 20:34:07 +02:00
readdirents.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
resource.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
select.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
socket.h Implement file descriptor passing. 2021-12-31 22:24:11 +01:00
stat.h Fix <fcntl.h> including <sys/stat.h> namespace pollution. 2018-08-06 23:59:34 +02:00
statvfs.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
syscall.h Compile libc with -ffreestanding. 2016-05-15 22:43:29 +02:00
termmode.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
time.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
times.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
types.h Compile libc with -ffreestanding. 2016-05-15 22:43:29 +02:00
uio.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
un.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
utsname.h Remove uname -i and -o options. 2016-05-15 22:43:29 +02:00
wait.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00