1*3edd5365SThomas Weißschuh /* SPDX-License-Identifier: LGPL-2.1 OR MIT */
2*3edd5365SThomas Weißschuh /*
3*3edd5365SThomas Weißschuh * Prctl definitions for NOLIBC
4*3edd5365SThomas Weißschuh * Copyright (C) 2017-2021 Willy Tarreau <w@1wt.eu>
5*3edd5365SThomas Weißschuh */
6*3edd5365SThomas Weißschuh
7*3edd5365SThomas Weißschuh /* make sure to include all global symbols */
8*3edd5365SThomas Weißschuh #include "../nolibc.h"
9*3edd5365SThomas Weißschuh
10*3edd5365SThomas Weißschuh #ifndef _NOLIBC_SYS_PRCTL_H
11*3edd5365SThomas Weißschuh #define _NOLIBC_SYS_PRCTL_H
12*3edd5365SThomas Weißschuh
13*3edd5365SThomas Weißschuh #include "../sys.h"
14*3edd5365SThomas Weißschuh
15*3edd5365SThomas Weißschuh #include <linux/prctl.h>
16*3edd5365SThomas Weißschuh
17*3edd5365SThomas Weißschuh /*
18*3edd5365SThomas Weißschuh * int prctl(int option, unsigned long arg2, unsigned long arg3,
19*3edd5365SThomas Weißschuh * unsigned long arg4, unsigned long arg5);
20*3edd5365SThomas Weißschuh */
21*3edd5365SThomas Weißschuh
22*3edd5365SThomas Weißschuh static __attribute__((unused))
sys_prctl(int option,unsigned long arg2,unsigned long arg3,unsigned long arg4,unsigned long arg5)23*3edd5365SThomas Weißschuh int sys_prctl(int option, unsigned long arg2, unsigned long arg3,
24*3edd5365SThomas Weißschuh unsigned long arg4, unsigned long arg5)
25*3edd5365SThomas Weißschuh {
26*3edd5365SThomas Weißschuh return my_syscall5(__NR_prctl, option, arg2, arg3, arg4, arg5);
27*3edd5365SThomas Weißschuh }
28*3edd5365SThomas Weißschuh
29*3edd5365SThomas Weißschuh static __attribute__((unused))
prctl(int option,unsigned long arg2,unsigned long arg3,unsigned long arg4,unsigned long arg5)30*3edd5365SThomas Weißschuh int prctl(int option, unsigned long arg2, unsigned long arg3,
31*3edd5365SThomas Weißschuh unsigned long arg4, unsigned long arg5)
32*3edd5365SThomas Weißschuh {
33*3edd5365SThomas Weißschuh return __sysret(sys_prctl(option, arg2, arg3, arg4, arg5));
34*3edd5365SThomas Weißschuh }
35*3edd5365SThomas Weißschuh
36*3edd5365SThomas Weißschuh #endif /* _NOLIBC_SYS_PRCTL_H */
37