librtld_db man page on FreeBSD

Man page or keyword search:  
man Server   9747 pages
apropos Keyword Search (all sections)
Output format
FreeBSD logo
[printable version]

LIBRTLD_DB(3)		 BSD Library Functions Manual		 LIBRTLD_DB(3)

NAME
     librtld_db — library for run-time linker debugging

LIBRARY
     library “librtld_db”

SYNOPSIS
     #include <rtld_db.h>

     void
     rd_delete(rd_agent_t *rdap);

     char *
     rd_errstr(rd_err_e rderr);

     rd_err_e
     rd_event_addr(rd_agent_t *rdap, rd_notify_t *notify);

     rd_err_e
     rd_event_enable(rd_agent_t *rdap, int onoff);

     rd_err_e
     rd_event_getmsg(rd_agent_t *rdap, rd_event_msg_t *msg);

     rd_err_e
     rd_init(int version);

     typedef int
     rl_iter_f(const rd_loadobj_t *, void *);

     rd_err_e
     rd_loadobj_iter(rd_agent_t *rdap, rl_iter_f *cb, void *clnt_data);

     void
     rd_log(const int onoff);

     rd_agent_t *
     rd_new(struct proc_handle *php);

     rd_err_e
     rd_objpad_enable(rd_agent_t *rdap, size_t padsize);

     rd_err_e
     rd_plt_resolution(rd_agent_t *rdap, uintptr_t pc, struct proc *proc,
	 uintptr_t plt_base, rd_plt_info_t *rpi);

     rd_err_e
     rd_reset(rd_agent_t *rdap);

DESCRIPTION
     The librtld_db library provides a debugging interface to the run-time
     linker (rtld).  This library must be used along with libproc(3).

     Most library functions take a rd_agent_t argument.	 This argument is an
     opaque structure containing information associated with the current sta‐
     tus of the agent.

     Before you start using librtld_db you should call rd_init() with the
     RD_VERSION argument.  This initializes the library to the correct version
     your program was compiled with and provides proper ABI stability.

     What follows is a description of what each function.

     rd_new() creates a new librtld_db agent.  The php argument should be the
     proc_handle you received from libproc(3).

     rd_reset() resets your previously created agent.

     rd_delete() dealocates the resources associated with the agent.

     rd_errstr() returns an error string describing the error present in
     rderr.

     rd_event_enable() enables reporting of events.  This function always
     returns RD_OK.

     rd_event_addr() returns the event address in the event paramenter.	 At
     the moment we only report RD_NOTIFY_BPT events.

     rd_event_getmsg() returns the message assoicated wit hthe latest event.
     At the moment only RD_POSTINIT events are supported.

     rd_loadobj_iter() allows you to iterate over the program's loaded
     objects.  cb is a callback of type rl_iter_f().

RETURN VALUES
     Most functions return an rd_err_e type error.  The error codes are
     described in the header file for this library.  You can get the error
     string using rd_errstr().

SEE ALSO
     ld(1), ld-elf.so.1(1), ld.so(1), libproc(3), rtld(1)

HISTORY
     The librtld_db library first appeared in FreeBSD 9.0 and was modeled
     after the same library present in the Solaris operating system.

AUTHORS
     The librtld_db library and this manual page were written by Rui Paulo
     ⟨rpaulo@FreeBSD.org⟩ under sponsorship from the FreeBSD Foundation.

CAVEATS
     The functions rd_event_enable(), rd_log(), rd_objpad_enable() and
     rd_plt_resolution() are not yet implemented.

BSD				 June 10, 2010				   BSD
[top]

List of man pages available for FreeBSD

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
...................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net