Serenity Operating System
at master 28 lines 510 B view raw
1/* 2 * Copyright (c) 2020, Andreas Kling <kling@serenityos.org> 3 * 4 * SPDX-License-Identifier: BSD-2-Clause 5 */ 6 7#include <errno.h> 8#include <stdarg.h> 9#include <stdio.h> 10#include <sys/prctl.h> 11#include <syscall.h> 12 13extern "C" { 14 15int prctl(int option, ...) 16{ 17 va_list args; 18 va_start(args, option); 19 20 uintptr_t arg1 = va_arg(args, uintptr_t); 21 uintptr_t arg2 = va_arg(args, uintptr_t); 22 23 va_end(args); 24 25 int rc = syscall(SC_prctl, option, arg1, arg2); 26 __RETURN_WITH_ERRNO(rc, rc, -1); 27} 28}