Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
0002 #ifndef _UAPI_LINUX_BINFMTS_H
0003 #define _UAPI_LINUX_BINFMTS_H
0004 
0005 #include <linux/capability.h>
0006 
0007 struct pt_regs;
0008 
0009 /*
0010  * These are the maximum length and maximum number of strings passed to the
0011  * execve() system call.  MAX_ARG_STRLEN is essentially random but serves to
0012  * prevent the kernel from being unduly impacted by misaddressed pointers.
0013  * MAX_ARG_STRINGS is chosen to fit in a signed 32-bit integer.
0014  */
0015 #define MAX_ARG_STRLEN (PAGE_SIZE * 32)
0016 #define MAX_ARG_STRINGS 0x7FFFFFFF
0017 
0018 /* sizeof(linux_binprm->buf) */
0019 #define BINPRM_BUF_SIZE 256
0020 
0021 /* preserve argv0 for the interpreter  */
0022 #define AT_FLAGS_PRESERVE_ARGV0_BIT 0
0023 #define AT_FLAGS_PRESERVE_ARGV0 (1 << AT_FLAGS_PRESERVE_ARGV0_BIT)
0024 
0025 #endif /* _UAPI_LINUX_BINFMTS_H */