diff options
Diffstat (limited to 'Userland/Utilities/shutdown.cpp')
-rw-r--r-- | Userland/Utilities/shutdown.cpp | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/Userland/Utilities/shutdown.cpp b/Userland/Utilities/shutdown.cpp index 80f724f4ce..130f74efa5 100644 --- a/Userland/Utilities/shutdown.cpp +++ b/Userland/Utilities/shutdown.cpp @@ -1,25 +1,24 @@ /* * Copyright (c) 2018-2020, Andreas Kling <kling@serenityos.org> * Copyright (c) 2021, Liav A. <liavalb@hotmail.co.il> + * Copyright (c) 2022, Alex Major * * SPDX-License-Identifier: BSD-2-Clause */ +#include <LibCore/Stream.h> +#include <LibMain/Main.h> #include <fcntl.h> #include <stdio.h> #include <unistd.h> -int main(int, char**) +ErrorOr<int> serenity_main(Main::Arguments) { - int power_state_switch_node = open("/sys/firmware/power_state", O_WRONLY); - if (power_state_switch_node < 0) { - perror("open"); - return 1; - } - const char* value = "2"; - if (write(power_state_switch_node, value, 1) < 0) { - perror("write"); - return 1; - } + auto file = TRY(Core::Stream::File::open("/sys/firmware/power_state", Core::Stream::OpenMode::Write)); + + const String file_contents = "2"; + TRY(file->write(file_contents.bytes())); + file->close(); + return 0; } |