1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef _UAPI_LINUX_AUXVEC_H
3#define _UAPI_LINUX_AUXVEC_H
4
5#include <asm/auxvec.h>
6
7/* Symbolic values for the entries in the auxiliary table
8   put on the initial stack */
9#define AT_NULL   0	/* end of vector */
10#define AT_IGNORE 1	/* entry should be ignored */
11#define AT_EXECFD 2	/* file descriptor of program */
12#define AT_PHDR   3	/* program headers for program */
13#define AT_PHENT  4	/* size of program header entry */
14#define AT_PHNUM  5	/* number of program headers */
15#define AT_PAGESZ 6	/* system page size */
16#define AT_BASE   7	/* base address of interpreter */
17#define AT_FLAGS  8	/* flags */
18#define AT_ENTRY  9	/* entry point of program */
19#define AT_NOTELF 10	/* program is not ELF */
20#define AT_UID    11	/* real uid */
21#define AT_EUID   12	/* effective uid */
22#define AT_GID    13	/* real gid */
23#define AT_EGID   14	/* effective gid */
24#define AT_PLATFORM 15  /* string identifying CPU for optimizations */
25#define AT_HWCAP  16    /* arch dependent hints at CPU capabilities */
26#define AT_CLKTCK 17	/* frequency at which times() increments */
27/* AT_* values 18 through 22 are reserved */
28#define AT_SECURE 23   /* secure mode boolean */
29#define AT_BASE_PLATFORM 24	/* string identifying real platform, may
30				 * differ from AT_PLATFORM. */
31#define AT_RANDOM 25	/* address of 16 random bytes */
32#define AT_HWCAP2 26	/* extension of AT_HWCAP */
33#define AT_RSEQ_FEATURE_SIZE	27	/* rseq supported feature size */
34#define AT_RSEQ_ALIGN		28	/* rseq allocation alignment */
35#define AT_HWCAP3 29	/* extension of AT_HWCAP */
36#define AT_HWCAP4 30	/* extension of AT_HWCAP */
37
38#define AT_EXECFN  31	/* filename of program */
39
40#ifndef AT_MINSIGSTKSZ
41#define AT_MINSIGSTKSZ	51	/* minimal stack size for signal delivery */
42#endif
43
44#endif /* _UAPI_LINUX_AUXVEC_H */
45