From f47d92af7248fc866122da9ebc76dff3f778a921 Mon Sep 17 00:00:00 2001 From: faxe1008 Date: Tue, 23 Nov 2021 17:14:56 +0100 Subject: [PATCH] arp: Port to LibMain --- Userland/Utilities/CMakeLists.txt | 1 + Userland/Utilities/arp.cpp | 23 +++++++---------------- 2 files changed, 8 insertions(+), 16 deletions(-) diff --git a/Userland/Utilities/CMakeLists.txt b/Userland/Utilities/CMakeLists.txt index 00b62ffd80..712836a531 100644 --- a/Userland/Utilities/CMakeLists.txt +++ b/Userland/Utilities/CMakeLists.txt @@ -52,6 +52,7 @@ foreach(CMD_SRC ${CMD_SOURCES}) endforeach() target_link_libraries(aplay LibAudio) +target_link_libraries(arp LibMain) target_link_libraries(asctl LibAudio) target_link_libraries(bt LibSymbolication) target_link_libraries(checksum LibCrypto) diff --git a/Userland/Utilities/arp.cpp b/Userland/Utilities/arp.cpp index 1272cc51fd..af074e4c61 100644 --- a/Userland/Utilities/arp.cpp +++ b/Userland/Utilities/arp.cpp @@ -13,6 +13,8 @@ #include #include #include +#include +#include #include #include #include @@ -21,22 +23,11 @@ #include #include -int main(int argc, char** argv) +ErrorOr serenity_main(Main::Arguments arguments) { - if (pledge("stdio rpath tty", nullptr) < 0) { - perror("pledge"); - return 1; - } - - if (unveil("/proc/net/arp", "r") < 0) { - perror("unveil"); - return 1; - } - - if (unveil(nullptr, nullptr) < 0) { - perror("unveil"); - return 1; - } + TRY(Core::System::pledge("stdio rpath tty", nullptr)); + TRY(Core::System::unveil("/proc/net/arp", "r")); + TRY(Core::System::unveil(nullptr, nullptr)); static bool flag_set; static bool flag_delete; @@ -49,7 +40,7 @@ int main(int argc, char** argv) args_parser.add_option(flag_delete, "Delete an ARP table entry", "delete", 'd'); args_parser.add_positional_argument(value_ipv4_address, "IPv4 protocol address", "address", Core::ArgsParser::Required::No); args_parser.add_positional_argument(value_hw_address, "Hardware address", "hwaddress", Core::ArgsParser::Required::No); - args_parser.parse(argc, argv); + args_parser.parse(arguments); enum class Alignment { Left,