summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2017-07-21 18:12:35 +0000
committerkib <kib@FreeBSD.org>2017-07-21 18:12:35 +0000
commitc6fc45c2f8ba021b7d7f384106b810ea81b2233c (patch)
treee186a29474d217489379f3c7b15863c234a651c7 /lib
parente4115a47691081caf7caf89104b0139ef5e3c9cb (diff)
downloadFreeBSD-src-c6fc45c2f8ba021b7d7f384106b810ea81b2233c.zip
FreeBSD-src-c6fc45c2f8ba021b7d7f384106b810ea81b2233c.tar.gz
MFC r319875:
Add ptrace(PT_GET_SC_ARGS) command to return debuggee' current syscall arguments.
Diffstat (limited to 'lib')
-rw-r--r--lib/libc/sys/ptrace.222
1 files changed, 21 insertions, 1 deletions
diff --git a/lib/libc/sys/ptrace.2 b/lib/libc/sys/ptrace.2
index 8eb26dd..b8968eb 100644
--- a/lib/libc/sys/ptrace.2
+++ b/lib/libc/sys/ptrace.2
@@ -2,7 +2,7 @@
.\" $NetBSD: ptrace.2,v 1.2 1995/02/27 12:35:37 cgd Exp $
.\"
.\" This file is in the public domain.
-.Dd August 29, 2016
+.Dd June 11, 2017
.Dt PTRACE 2
.Os
.Sh NAME
@@ -643,6 +643,26 @@ and
.Fa data
arguments are used the same as for
.Dv PT_CONTINUE.
+.It Dv PT_GET_SC_ARGS
+For the thread which is stopped in either
+.Dv PL_FLAG_SCE
+or
+.Dv PL_FLAG_SCX
+state, that is, on entry or exit to a syscall,
+this request fetches the syscall arguments.
+.Pp
+The arguments are copied out into the buffer pointed to by the
+.Fa addr
+pointer, sequentially.
+Each syscall argument is stored as the machine word.
+Kernel copies out as many arguments as the syscall accepts,
+see the
+.Va pl_syscall_narg
+member of the
+.Vt struct ptrace_lwpinfo ,
+but not more than the
+.Fa data
+bytes in total are copied.
.It Dv PT_FOLLOW_FORK
This request controls tracing for new child processes of a traced process.
If
OpenPOWER on IntegriCloud