PR_SETRCTL(3PROC) | Process Control Library Functions | PR_SETRCTL(3PROC) |
pr_setrctl
—
inject setrctl system call into victim process
Process Control Library (libproc, -lproc)
#include
<libproc.h>
int
pr_setrctl
(struct ps_prochandle
*P, const char *rname, rctlblk_t
*old_blk, rctlblk_t *new_blk,
int rflag);
The
pr_setrctl
()
function injects the setrctl(2)
system call into the target process P by means of the
agent LWP. If the process handle P is the value
NULL
then this will be equivalent to calling
setrctl(2) on the currently running
process.
The arguments rname, old_blk, new_blk, and rflag have the same meaning as in setrctl(2). See setrctl(2) for the full description and purpose of the setrctl system call and its arguments.
The
pr_setrctl
()
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_setrctl
() function's return value is that
described in setrctl(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 setrctl(2).
The pr_setrctl
() function will fail
if:
ENOSYS
See LOCKING in libproc(3LIB).
November 27, 2023 | OmniOS |