Serenity Operating System
at master 31 lines 843 B view raw
1/* 2 * Copyright (c) 2020, the SerenityOS developers. 3 * 4 * SPDX-License-Identifier: BSD-2-Clause 5 */ 6 7#include "DHCPv4Client.h" 8#include <LibCore/ArgsParser.h> 9#include <LibCore/EventLoop.h> 10#include <LibCore/System.h> 11#include <LibMain/Main.h> 12 13ErrorOr<int> serenity_main(Main::Arguments args) 14{ 15 Vector<DeprecatedString> interfaces; 16 17 Core::ArgsParser parser; 18 parser.add_positional_argument(interfaces, "Interfaces to run DHCP server on", "interfaces"); 19 parser.parse(args); 20 21 TRY(Core::System::pledge("stdio unix inet cpath rpath")); 22 Core::EventLoop event_loop; 23 24 TRY(Core::System::unveil("/sys/kernel/net/", "r")); 25 TRY(Core::System::unveil(nullptr, nullptr)); 26 27 auto client = TRY(DHCPv4Client::try_create(interfaces)); 28 29 TRY(Core::System::pledge("stdio inet cpath rpath")); 30 return event_loop.exec(); 31}