1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2*4882a593Smuzhiyun #ifndef _UAPI_LINUX_BINFMTS_H 3*4882a593Smuzhiyun #define _UAPI_LINUX_BINFMTS_H 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun #include <linux/capability.h> 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun struct pt_regs; 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun /* 10*4882a593Smuzhiyun * These are the maximum length and maximum number of strings passed to the 11*4882a593Smuzhiyun * execve() system call. MAX_ARG_STRLEN is essentially random but serves to 12*4882a593Smuzhiyun * prevent the kernel from being unduly impacted by misaddressed pointers. 13*4882a593Smuzhiyun * MAX_ARG_STRINGS is chosen to fit in a signed 32-bit integer. 14*4882a593Smuzhiyun */ 15*4882a593Smuzhiyun #define MAX_ARG_STRLEN (PAGE_SIZE * 32) 16*4882a593Smuzhiyun #define MAX_ARG_STRINGS 0x7FFFFFFF 17*4882a593Smuzhiyun 18*4882a593Smuzhiyun /* sizeof(linux_binprm->buf) */ 19*4882a593Smuzhiyun #define BINPRM_BUF_SIZE 256 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun #endif /* _UAPI_LINUX_BINFMTS_H */ 22