| PR_PROCESSOR_BIND(3PROC) | Process Control Library Functions | PR_PROCESSOR_BIND(3PROC) |
pr_processor_bind —
inject processor_bind system call into victim
process
Process Control Library (libproc, -lproc)
#include
<libproc.h>
int
pr_processor_bind(struct ps_prochandle
*P, idtype_t idtype, id_t
id, int processorid, int
*obind);
The
pr_processor_bind()
function injects the
processor_bind(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
processor_bind(2) on the
currently running process.
The arguments idtype, id, processorid, and obind have the same meaning as in processor_bind(2). See processor_bind(2) for the full description and purpose of the processor_bind system call and its arguments.
The
pr_processor_bind()
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_processor_bind() function's return value is that
described in
processor_bind(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 processor_bind(2).
The pr_processor_bind() function will fail
if:
ENOSYSSee LOCKING in libproc(3LIB).
| November 27, 2023 | OmniOS |