mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-07 06:43:00 +03:00
Add PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG etc. from Linux 6.4 to sys/ptrace.h
Linux 6.4 adds new constants PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG and PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG. Add those to all relevant sys/ptrace.h headers, along with adding the associated argument structure to bits/ptrace-shared.h (named struct __ptrace_sud_config there following the usual convention for such structures). Tested for x86_64 and with build-many-glibcs.py.
This commit is contained in:
@@ -59,6 +59,8 @@ __BEGIN_DECLS
|
|||||||
#undef PTRACE_SECCOMP_GET_METADATA
|
#undef PTRACE_SECCOMP_GET_METADATA
|
||||||
#undef PTRACE_GET_SYSCALL_INFO
|
#undef PTRACE_GET_SYSCALL_INFO
|
||||||
#undef PTRACE_GET_RSEQ_CONFIGURATION
|
#undef PTRACE_GET_RSEQ_CONFIGURATION
|
||||||
|
#undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
|
#undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
|
|
||||||
/* Type of the REQUEST argument to `ptrace.' */
|
/* Type of the REQUEST argument to `ptrace.' */
|
||||||
enum __ptrace_request
|
enum __ptrace_request
|
||||||
@@ -195,8 +197,18 @@ enum __ptrace_request
|
|||||||
#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
|
#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
|
||||||
|
|
||||||
/* Get rseq configuration information. */
|
/* Get rseq configuration information. */
|
||||||
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
|
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
|
||||||
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
||||||
|
|
||||||
|
/* Set configuration for syscall user dispatch. */
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210,
|
||||||
|
#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
|
|
||||||
|
/* Get configuration for syscall user dispatch. */
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211
|
||||||
|
#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@@ -204,8 +204,18 @@ enum __ptrace_request
|
|||||||
#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
|
#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
|
||||||
|
|
||||||
/* Get rseq configuration information. */
|
/* Get rseq configuration information. */
|
||||||
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
|
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
|
||||||
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
||||||
|
|
||||||
|
/* Set configuration for syscall user dispatch. */
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210,
|
||||||
|
#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
|
|
||||||
|
/* Get configuration for syscall user dispatch. */
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211
|
||||||
|
#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@@ -130,6 +130,16 @@ struct __ptrace_rseq_configuration
|
|||||||
__uint32_t pad;
|
__uint32_t pad;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* Argument of PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG and
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG. */
|
||||||
|
struct __ptrace_sud_config
|
||||||
|
{
|
||||||
|
__uint64_t mode;
|
||||||
|
__uint64_t selector;
|
||||||
|
__uint64_t offset;
|
||||||
|
__uint64_t len;
|
||||||
|
};
|
||||||
|
|
||||||
/* Perform process tracing functions. REQUEST is one of the values
|
/* Perform process tracing functions. REQUEST is one of the values
|
||||||
above, and determines the action to be taken.
|
above, and determines the action to be taken.
|
||||||
For all requests except PTRACE_TRACEME, PID specifies the process to be
|
For all requests except PTRACE_TRACEME, PID specifies the process to be
|
||||||
|
@@ -157,8 +157,18 @@ enum __ptrace_request
|
|||||||
#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
|
#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
|
||||||
|
|
||||||
/* Get rseq configuration information. */
|
/* Get rseq configuration information. */
|
||||||
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
|
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
|
||||||
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
||||||
|
|
||||||
|
/* Set configuration for syscall user dispatch. */
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210,
|
||||||
|
#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
|
|
||||||
|
/* Get configuration for syscall user dispatch. */
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211
|
||||||
|
#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@@ -40,6 +40,7 @@ __BEGIN_DECLS
|
|||||||
# undef PTRACE_GETSIGINFO
|
# undef PTRACE_GETSIGINFO
|
||||||
# undef PTRACE_GETSIGMASK
|
# undef PTRACE_GETSIGMASK
|
||||||
# undef PTRACE_GET_SYSCALL_INFO
|
# undef PTRACE_GET_SYSCALL_INFO
|
||||||
|
# undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
# undef PTRACE_GETVRREGS
|
# undef PTRACE_GETVRREGS
|
||||||
# undef PTRACE_GETVSRREGS
|
# undef PTRACE_GETVSRREGS
|
||||||
# undef PTRACE_INTERRUPT
|
# undef PTRACE_INTERRUPT
|
||||||
@@ -62,6 +63,7 @@ __BEGIN_DECLS
|
|||||||
# undef PTRACE_SETREGSET
|
# undef PTRACE_SETREGSET
|
||||||
# undef PTRACE_SETSIGINFO
|
# undef PTRACE_SETSIGINFO
|
||||||
# undef PTRACE_SETSIGMASK
|
# undef PTRACE_SETSIGMASK
|
||||||
|
# undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
# undef PTRACE_SETVRREGS
|
# undef PTRACE_SETVRREGS
|
||||||
# undef PTRACE_SETVSRREGS
|
# undef PTRACE_SETVSRREGS
|
||||||
# undef PTRACE_SINGLEBLOCK
|
# undef PTRACE_SINGLEBLOCK
|
||||||
@@ -265,8 +267,18 @@ enum __ptrace_request
|
|||||||
#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
|
#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
|
||||||
|
|
||||||
/* Get rseq configuration information. */
|
/* Get rseq configuration information. */
|
||||||
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
|
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
|
||||||
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
||||||
|
|
||||||
|
/* Set configuration for syscall user dispatch. */
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210,
|
||||||
|
#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
|
|
||||||
|
/* Get configuration for syscall user dispatch. */
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211
|
||||||
|
#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@@ -86,6 +86,8 @@ __BEGIN_DECLS
|
|||||||
# undef PTRACE_SYSCALL_INFO_EXIT
|
# undef PTRACE_SYSCALL_INFO_EXIT
|
||||||
# undef PTRACE_SYSCALL_INFO_SECCOMP
|
# undef PTRACE_SYSCALL_INFO_SECCOMP
|
||||||
# undef PTRACE_GET_RSEQ_CONFIGURATION
|
# undef PTRACE_GET_RSEQ_CONFIGURATION
|
||||||
|
# undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
|
# undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
#endif
|
#endif
|
||||||
/* Type of the REQUEST argument to `ptrace.' */
|
/* Type of the REQUEST argument to `ptrace.' */
|
||||||
enum __ptrace_request
|
enum __ptrace_request
|
||||||
@@ -221,6 +223,16 @@ enum __ptrace_request
|
|||||||
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
|
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
|
||||||
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
||||||
|
|
||||||
|
/* Set configuration for syscall user dispatch. */
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210,
|
||||||
|
#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
|
|
||||||
|
/* Get configuration for syscall user dispatch. */
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211,
|
||||||
|
#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
|
|
||||||
PTRACE_PEEKUSR_AREA = 0x5000,
|
PTRACE_PEEKUSR_AREA = 0x5000,
|
||||||
#define PTRACE_PEEKUSR_AREA PTRACE_PEEKUSR_AREA
|
#define PTRACE_PEEKUSR_AREA PTRACE_PEEKUSR_AREA
|
||||||
|
|
||||||
|
@@ -225,8 +225,18 @@ enum __ptrace_request
|
|||||||
#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
|
#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
|
||||||
|
|
||||||
/* Get rseq configuration information. */
|
/* Get rseq configuration information. */
|
||||||
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
|
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
|
||||||
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
||||||
|
|
||||||
|
/* Set configuration for syscall user dispatch. */
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210,
|
||||||
|
#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
|
|
||||||
|
/* Get configuration for syscall user dispatch. */
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211
|
||||||
|
#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@@ -174,8 +174,18 @@ enum __ptrace_request
|
|||||||
#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
|
#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
|
||||||
|
|
||||||
/* Get rseq configuration information. */
|
/* Get rseq configuration information. */
|
||||||
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
|
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
|
||||||
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
||||||
|
|
||||||
|
/* Set configuration for syscall user dispatch. */
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210,
|
||||||
|
#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
|
|
||||||
|
/* Get configuration for syscall user dispatch. */
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211
|
||||||
|
#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@@ -194,8 +194,18 @@ enum __ptrace_request
|
|||||||
#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
|
#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
|
||||||
|
|
||||||
/* Get rseq configuration information. */
|
/* Get rseq configuration information. */
|
||||||
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
|
PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
|
||||||
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
|
||||||
|
|
||||||
|
/* Set configuration for syscall user dispatch. */
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210,
|
||||||
|
#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
|
|
||||||
|
/* Get configuration for syscall user dispatch. */
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211
|
||||||
|
#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \
|
||||||
|
PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user