|
NAMEdwarf_get_str —
retrieve a string from the DWARF string section
LIBRARYDWARF Access Library (libdwarf, -ldwarf)SYNOPSIS#include <libdwarf.h>
int
DESCRIPTIONFunctiondwarf_get_str () retrieves a NUL-terminated
string from the DWARF string section “.debug_str”.
Argument dbg should reference a DWARF debug context allocated using dwarf_init(3). Argument offset should be an offset, relative to the “.debug_str” section, specifying the start of the desired string. Argument string should point to a location which will hold a returned pointer to a NUL-terminated string. Argument len should point to a location which will hold the length of the returned string. The returned length does not include the space needed for the NUL-terminator. If argument err is not NULL, it will be used to store error information in case of an error. RETURN VALUESFunctiondwarf_get_str () returns
DW_DLV_OK when it succeeds. It returns
DW_DLV_NO_ENTRY if there is no
“.debug_str” section associated with the specified debugging
context, or if the provided offset offset is at the very
end of “.debug_str” section. In case of an error, it returns
DW_DLV_ERROR and sets the argument
err.
EXAMPLESTo retrieve all the strings in the DWARF string section, use:Dwarf_Debug dbg; Dwarf_Off offset; Dwarf_Signed len; Dwarf_Error de; char *str; int ret offset = 0; while ((ret = dwarf_get_str(dbg, offset, &str, &len, &de)) == DW_DLV_OK) { /* .. Use the retrieved string. .. */ offset += len + 1; /* Account for the terminating NUL. */ } if (ret == DW_DLV_ERROR) warnx("dwarf_get_str: %s", dwarf_errmsg(de)); ERRORSFunctiondwarf_get_str () can fail with:
SEE ALSOdwarf(3), dwarf_init(3)
Visit the GSP FreeBSD Man Page Interface. |