PR_GETRCTL(3PROC) | Process Control Library Functions | PR_GETRCTL(3PROC) |
pr_getrctl
—
inject getrctl system call into victim process
Process Control Library (libproc, -lproc)
#include
<libproc.h>
int
pr_getrctl
(struct ps_prochandle
*P, const char *rname, rctlblk_t
*old_blk, rctlblk_t *new_blk,
int rflag);
The
pr_getrctl
()
function injects the getrctl(2)
system call into the target process P by means of the
agent LWP. If the process handle P is
NULL
then this is equivalent to calling
getrctl(2) on the currently running
process.
The arguments rname, old_blk, new_blk, and rflag have the same meaning as in getrctl(2). See getrctl(2) for the full description and purpose of the getrctl system call and its arguments.
The
pr_getrctl
()
function only works on active processes. Process handles that correspond to
core files, zombie processes, or ELF objects do not support system call
injection.
Upon successful completion, the
pr_getrctl
() function's return value is that
described in getrctl(2). Otherwise,
-1 is returned
and
errno is
set to ENOSYS
to indicate that the system call could
not be injected.
For the full list of errors see the ERRORS section in getrctl(2).
The pr_getrctl
() function will fail
if:
ENOSYS
See LOCKING in libproc(3LIB).
November 27, 2023 | OmniOS |