1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-06-01 09:28:13 +00:00
serenity/Userland
sin-ack 5b95850e28 SystemServer+LibCore: Allow service to request multiple sockets
SystemServer only allowed a single socket to be created for a service
before this.  Now, SystemServer will allow any amount of sockets.  The
sockets can be defined like so:

[SomeService]
Socket=/tmp/portal/socket1,/tmp/portal/socket2,/tmp/portal/socket3
SocketPermissions=660,600

The last item in SocketPermissions is applied to the remainder of the
sockets in the Socket= line, so multiple sockets can have the same
permissions without having to repeat them.

Defining multiple sockets is not allowed for socket-activated services
at the moment, and wouldn't make much sense anyway.

This patch also makes socket takeovers more robust by removing the
assumption that the socket will always be passed in fd 3.  Now, the
SOCKET_TAKEOVER environment variable carries information about which
endpoint corresponds to which socket, like so:

SOCKET_TAKEOVER=/tmp/portal/socket1:3 /tmp/portal/socket2:4

and LocalServer/LocalService will parse this automatically and select
the correct one.  The old behavior of getting the default socket is
preserved so long as the service only requests a single socket in
SystemServer.ini.
2021-04-15 21:04:49 +02:00
..
Applets Applets: Remove unused UserName applet 2021-04-15 20:38:12 +02:00
Applications Welcome: Fix build breakage 2021-04-15 21:00:55 +02:00
Demos LibGfxDemo: Add an elliptic arc next to the Bezier curves 2021-04-15 17:50:16 +02:00
DevTools Everywhere: It's now "Foobar", not "FooBar", and not "foo bar" 2021-04-13 16:58:15 +02:00
DynamicLoader LibC: Add x86_64 Registers 2021-03-21 09:35:23 +01:00
Games Chess: Alt shortcuts and book title capitalization in menus 2021-04-14 21:32:37 +02:00
Libraries SystemServer+LibCore: Allow service to request multiple sockets 2021-04-15 21:04:49 +02:00
Services SystemServer+LibCore: Allow service to request multiple sockets 2021-04-15 21:04:49 +02:00
Shell Everything: Add -Wnon-virtual-dtor flag 2021-04-15 20:57:13 +02:00
Tests LibM: Use fptan/fpatan instead of approximating atan2/tan 2021-04-15 17:50:16 +02:00
Utilities Everything: Add -Wnon-virtual-dtor flag 2021-04-15 20:57:13 +02:00
CMakeLists.txt Userland: Rename *.MenuApplet => *.Applet 2021-04-04 16:29:55 +02:00