PR_DOOR_INFO(3PROC) Process Control Library Functions PR_DOOR_INFO(3PROC)

NAME


pr_door_info - inject door_info library call into victim process

LIBRARY


Process Control Library (libproc, -lproc)

SYNOPSIS


#include <libproc.h>

int
pr_door_info(struct ps_prochandle *P, int did, struct door_info *info);

DESCRIPTION


The pr_door_info() function injects the door_info(3C) library 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 door_info(3C) on the
currently running process.

The arguments did and info have the same meaning as in door_info(3C).
See door_info(3C) for the full description and purpose of the door_info
library call and its arguments.

The pr_door_info() function only works on active processes. Process
handles that correspond to core files, zombie processes, or ELF objects
do not support library call injection.

RETURN VALUES


Upon successful completion, the pr_door_info() function's return value
is that described in door_info(3C). Otherwise, -1 is returned and
errno is set to ENOSYS to indicate that the library call could not be
injected.

ERRORS


For the full list of errors see the ERRORS section in door_info(3C).

The pr_door_info() function will fail if:

ENOSYS An error occurred while trying to invoke the agent
LWP and inject a library call in the process handle
P or the process handle P does not support library
call injection.

INTERFACE STABILITY


Uncommitted

MT-LEVEL
See LOCKING in libproc(3LIB).

SEE ALSO


door_info(3C), libproc(3LIB), proc(5)

illumos November 27, 2023 illumos

tribblix@gmail.com :: GitHub :: Privacy