1rtld_db(3EXT)             Extended Library Functions             rtld_db(3EXT)
2
3
4

NAME

6       rtld_db,    rd_delete,   rd_errstr,   rd_event_addr,   rd_event_enable,
7       rd_event_getmsg,  rd_init,  rd_loadobj_iter,  rd_log,  rd_new,  rd_obj‐
8       pad_enable,  rd_plt_resolution,  rd_reset  -  runtime  linker debugging
9       functions
10

SYNOPSIS

12       cc [ flag ... ] file ... -lrtld_db [ library ... ]
13       #include <proc_service.h>
14       #include <rtld_db.h>
15
16       void rd_delete(struct rd_agent *rdap);
17
18
19       char *rd_errstr(rd_err_e rderr);
20
21
22       rd_err_e rd_event_addr(rd_agent *rdap, rd_notify_t *notify);
23
24
25       rd_err_e rd_event_enable(struct rd_agent *rdap, int onoff);
26
27
28       rd_err_e rd_event_getmsg(struct rd_agent *rdap,
29            rd_event_msg_t *msg);
30
31
32       rd_err_e rd_init(int version);
33
34
35       typedef int rl_iter_f(const rd_loadobj_t *, void *);
36
37
38       rd_err_e rd_loadobj_iter(rd_agent_t *rap, rl_iter_f *cb,
39            void *clnt_data);
40
41
42       void rd_log(const int onoff);
43
44
45       rd_agent_t *rd_new(struct ps_prochandle *php);
46
47
48       rd_err_e rd_objpad_enable(struct rd_agent *rdap, size_t padsize);
49
50
51       rd_err_e rd_plt_resolution(rd_agent *rdap, paddr_t pc,
52            lwpid_t lwpid, paddr_t plt_base, rd_plt_info_t *rpi);
53
54
55       rd_err_e rd_reset(struct rd_agent *rdap);
56
57

DESCRIPTION

59       The librtld_db library provides support for monitoring and manipulating
60       runtime  linking aspects of a program. There are at least two processes
61       involved,  the controlling process and one  or more  target  processes.
62       The  controlling  process  is  the  librtld_db  client  that links with
63       librtld_db and uses librtld_db to inspect  or  modify  runtime  linking
64       aspects  of  one or more target processes. See the Linker and Libraries
65       Guide for a full description of the runtime linker  debugger  interface
66       mechanism.
67

USAGE

69       To  use librtld_db, applications need to implement the interfaces docu‐
70       mented in ps_pread(3PROC) and proc_service(3PROC).
71

ATTRIBUTES

73       See attributes(5) for description of the following attributes:
74
75
76
77
78       ┌─────────────────────────────┬─────────────────────────────┐
79       │      ATTRIBUTE TYPE         │      ATTRIBUTE VALUE        │
80       ├─────────────────────────────┼─────────────────────────────┤
81       │Interface Stability          │Committed                    │
82       ├─────────────────────────────┼─────────────────────────────┤
83       │MT-Level                     │Safe                         │
84       └─────────────────────────────┴─────────────────────────────┘
85

SEE ALSO

87       ld.so.1(1),   libc_db(3LIB),   librtld_db(3LIB),   proc_service(3PROC),
88       ps_pread(3PROC), attributes(5)
89
90
91       Linker and Libraries Guide
92
93
94
95SunOS 5.11                        12 Oct 2007                    rtld_db(3EXT)
Impressum