summaryrefslogtreecommitdiff
path: root/Services/SystemServer/Service.cpp
AgeCommit message (Collapse)Author
2020-09-30LibCore: Add ensure_parent_directories to LibCore::FileItamar
Moved the implementation in SystemServer/Service.cpp to LibCore.
2020-08-24LibCore: Prefer strlcpy over strncpy, fix overflowBen Wiederhake
A malicious caller can create a SocketAddress for a local unix socket with an over-long name that does not fit into struct sock_addr_un. - Socket::connet: This caused the 'sun_path' field to overflow, probably overwriting the return pointer of the call frame, and thus crashing the process (in the best case). - SocketAddress::to_sockaddr_un: This triggered a RELEASE_ASSERT, and thus crashing the process. Both have been fixed to return a nice error code instead of crashing.
2020-08-20SystemServer: Minor #include cleanup in Service.cpp (#3227)Muhammad Zahalqa
2020-08-15SystemServer: Adjust assertion+comment for new dup2() behaviorAndreas Kling
dup2(fd, fd) will no longer clear CLOEXEC on the descriptor.
2020-06-22SystemServer: Put some debug spam behind #ifdefsAndreas Kling
2020-06-09SystemServer: Add support for accepting socket connections :^)Sergey Bugaev
You can now ask SystemServer to not only listen for connections on the socket, but to actually accept them, and to spawn an instance of the service for each client connection. In this case, it's the accepted, not listening, socket that the service processes will receive using socket takeover. This mode obviously requires the service to be a multi-instance service.
2020-06-09SystemServer: Add support for multi-instance servicesSergey Bugaev
For this kind of services, there's no single PID of a running instance; there may be multiple, or no instances of the service running at any time. No keepalive functionality is available in this mode, since "alive" doesn't make sense for multi-instance services. At the moment, there's no way to actually create multiple instances of a service; this is going to be added in the next commit.
2020-05-27SystemServer: Add BootModes and Environment service optionsSergey Bugaev
SystemServer will now look at the boot mode, as specified on the kernel command line, and only launch the services configured for that boot mode.
2020-05-08Services: Renamed from ServersAndreas Kling
It didn't feel right to have a "DHCPClient" in a "Servers" directory. Rename this to Services to better reflect the type of programs we'll be putting in there.