From 5d29f64c99865a8f315a9a38e620db7c3dcee535 Mon Sep 17 00:00:00 2001 From: Lucas CHOLLET Date: Tue, 1 Mar 2022 23:44:53 +0100 Subject: [PATCH] LibCore: Add wrapper for posix_openpt(), grantpt() and unlockpt() --- Userland/Libraries/LibCore/System.cpp | 24 ++++++++++++++++++++++++ Userland/Libraries/LibCore/System.h | 3 +++ 2 files changed, 27 insertions(+) diff --git a/Userland/Libraries/LibCore/System.cpp b/Userland/Libraries/LibCore/System.cpp index ff29dc69c6..017e0a8539 100644 --- a/Userland/Libraries/LibCore/System.cpp +++ b/Userland/Libraries/LibCore/System.cpp @@ -1084,4 +1084,28 @@ ErrorOr setenv(StringView name, StringView value, bool overwrite) return {}; } +ErrorOr posix_openpt(int flags) +{ + int const rc = ::posix_openpt(flags); + if (rc < 0) + return Error::from_syscall("posix_openpt", -errno); + return rc; +} + +ErrorOr grantpt(int fildes) +{ + auto const rc = ::grantpt(fildes); + if (rc < 0) + return Error::from_syscall("grantpt", -errno); + return {}; +} + +ErrorOr unlockpt(int fildes) +{ + auto const rc = ::unlockpt(fildes); + if (rc < 0) + return Error::from_syscall("unlockpt", -errno); + return {}; +} + } diff --git a/Userland/Libraries/LibCore/System.h b/Userland/Libraries/LibCore/System.h index 4312e50165..1ac96cf76c 100644 --- a/Userland/Libraries/LibCore/System.h +++ b/Userland/Libraries/LibCore/System.h @@ -146,5 +146,8 @@ ErrorOr> getgroups(); ErrorOr mknod(StringView pathname, mode_t mode, dev_t dev); ErrorOr mkfifo(StringView pathname, mode_t mode); ErrorOr setenv(StringView, StringView, bool); +ErrorOr posix_openpt(int flags); +ErrorOr grantpt(int fildes); +ErrorOr unlockpt(int fildes); }