ladybird/Userland/Services/FileSystemAccessServer/main.cpp
Timothy 41ce2debda FileSystemAccessServer: Add service for accessing veiled files nicely
Adds new service FileSystemAccessServer which allows programs to
request a file descriptor for any file on the file system.

The user can be prompted to choose the path with a FilePicker, or the
path can be provided by the application which will show a MessageBox
showing the pid and name of the calling process and allows the user to
approve or deny the request.
2021-07-10 15:33:46 +02:00

26 lines
774 B
C++

/*
* Copyright (c) 2021, timmot <tiwwot@protonmail.com>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#include <FileSystemAccessServer/ClientConnection.h>
#include <LibCore/EventLoop.h>
#include <LibCore/LocalServer.h>
#include <LibGUI/Application.h>
#include <LibIPC/ClientConnection.h>
int main(int, char**)
{
if (pledge("stdio recvfd sendfd rpath cpath wpath unix thread", nullptr) < 0) {
perror("pledge");
return 1;
}
auto app = GUI::Application::construct(0, nullptr);
app->set_quit_when_last_window_deleted(false);
auto socket = Core::LocalSocket::take_over_accepted_socket_from_system_server();
IPC::new_client_connection<FileSystemAccessServer::ClientConnection>(socket.release_nonnull(), 1);
return app->exec();
}