PR_GETSOCKNAME(3PROC) | Process Control Library Functions | PR_GETSOCKNAME(3PROC) |
pr_getsockname
—
inject getsockname library call into victim
process
Process Control Library (libproc, -lproc)
#include
<libproc.h>
int
pr_getsockname
(struct ps_prochandle
*P, int sock, struct sockaddr
*name, socklen_t *namelen);
The
pr_getsockname
()
function injects the
getsockname(3SOCKET)
library 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
getsockname(3SOCKET) on the
currently running process.
The arguments sock, name, and namelen have the same meaning as in getsockname(3SOCKET). See getsockname(3SOCKET) for the full description and purpose of the getsockname library call and its arguments.
The
pr_getsockname
()
function only works on active processes. Process handles that correspond to
core files, zombie processes, or ELF objects do not support library call
injection.
Upon successful completion, the
pr_getsockname
() function's return value is that
described in
getsockname(3SOCKET).
Otherwise, -1 is
returned and
errno is
set to ENOSYS
to indicate that the library call
could not be injected.
For the full list of errors see the ERRORS section in getsockname(3SOCKET).
The pr_getsockname
() function will fail
if:
ENOSYS
See LOCKING in libproc(3LIB).
November 27, 2023 | OmniOS |