1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 06:58:11 +00:00

LanguageServers/Shell: Port to LibMain :^)

This commit is contained in:
Andreas Kling 2021-11-23 10:37:38 +01:00
parent 54155f8c64
commit c2b90bab9f
2 changed files with 7 additions and 18 deletions

View file

@ -5,32 +5,21 @@
*/
#include "ClientConnection.h"
#include <AK/LexicalPath.h>
#include <LibCore/EventLoop.h>
#include <LibCore/File.h>
#include <LibCore/LocalServer.h>
#include <LibIPC/ClientConnection.h>
#include <sys/stat.h>
#include <unistd.h>
#include <LibMain/Main.h>
#include <LibSystem/Wrappers.h>
int main(int, char**)
ErrorOr<int> serenity_main(Main::Arguments)
{
Core::EventLoop event_loop;
if (pledge("stdio unix rpath recvfd", nullptr) < 0) {
perror("pledge");
return 1;
}
TRY(System::pledge("stdio unix rpath recvfd", nullptr));
auto socket = Core::LocalSocket::take_over_accepted_socket_from_system_server();
IPC::new_client_connection<LanguageServers::Shell::ClientConnection>(socket.release_nonnull(), 1);
if (pledge("stdio rpath recvfd", nullptr) < 0) {
perror("pledge");
return 1;
}
if (unveil("/etc/passwd", "r") < 0) {
perror("unveil");
return 1;
}
TRY(System::pledge("stdio rpath recvfd", nullptr));
TRY(System::unveil("/etc/passwd", "r"));
return event_loop.exec();
}