Serenity Operating System
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}