asm/syscall.h: add syscall_get_arch
Adds a stub for a function that will return the AUDIT_ARCH_* value
appropriate to the supplied task based on the system call convention.
For audit's use, the value can generally be hard-coded at the
audit-site. However, for other functionality not inlined into syscall
entry/exit, this makes that information available. seccomp_filter is
the first planned consumer and, as such, the comment indicates a tie to
CONFIG_HAVE_ARCH_SECCOMP_FILTER.
Suggested-by: Roland McGrath <mcgrathr@chromium.org>
Signed-off-by: Will Drewry <wad@chromium.org>
Acked-by: Serge Hallyn <serge.hallyn@canonical.com>
Acked-by: Eric Paris <eparis@redhat.com>
v18: comment and change reword and rebase.
v14: rebase/nochanges
v13: rebase on to 88ebdda615
v12: rebase on to linux-next
v11: fixed improper return type
v10: introduced
Signed-off-by: James Morris <james.l.morris@oracle.com>
This commit is contained in:
parent
932ecebb04
commit
07bd18d00d
1 changed files with 14 additions and 0 deletions
|
@ -142,4 +142,18 @@ void syscall_set_arguments(struct task_struct *task, struct pt_regs *regs,
|
||||||
unsigned int i, unsigned int n,
|
unsigned int i, unsigned int n,
|
||||||
const unsigned long *args);
|
const unsigned long *args);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* syscall_get_arch - return the AUDIT_ARCH for the current system call
|
||||||
|
* @task: task of interest, must be in system call entry tracing
|
||||||
|
* @regs: task_pt_regs() of @task
|
||||||
|
*
|
||||||
|
* Returns the AUDIT_ARCH_* based on the system call convention in use.
|
||||||
|
*
|
||||||
|
* It's only valid to call this when @task is stopped on entry to a system
|
||||||
|
* call, due to %TIF_SYSCALL_TRACE, %TIF_SYSCALL_AUDIT, or %TIF_SECCOMP.
|
||||||
|
*
|
||||||
|
* Architectures which permit CONFIG_HAVE_ARCH_SECCOMP_FILTER must
|
||||||
|
* provide an implementation of this.
|
||||||
|
*/
|
||||||
|
int syscall_get_arch(struct task_struct *task, struct pt_regs *regs);
|
||||||
#endif /* _ASM_SYSCALL_H */
|
#endif /* _ASM_SYSCALL_H */
|
||||||
|
|
Loading…
Reference in a new issue