DWARF_FORMSTRING(3) | Library Functions Manual | DWARF_FORMSTRING(3)

# NAME

`dwarf_formstring` —
return the value of a STRING class attribute

# LIBRARY

DWARF Access Library (libdwarf, -ldwarf)

# SYNOPSIS

`#include <libdwarf.h>`

int
`dwarf_formstring`(Dwarf_Attribute attr, char **ret, Dwarf_Error *err);

# DESCRIPTION

Function `dwarf_formstring`() sets the location pointed to by argument ret to a pointer to a NUL-terminated string containing the value of the attribute referenced by argument attr. The form of argument attr must be one of `DW_FORM_string` or `DW_FORM_strp`.

If argument err is not NULL, it will be used to return an error descriptor in case of an error.

## Memory Management

The memory area referenced by the returned pointer is managed by the DWARF(3) library. The application should not attempt to directly free this memory area.

# RETURN VALUES

Function `dwarf_formstring`() returns `DW_DLV_OK` on success. In case of an error, it returns `DW_DLV_ERROR` and sets argument err.

# ERRORS

Function `dwarf_formstring`() may fail with the following errors:

[`DW_DLE_ARGUMENT`]
  Either of arguments attr or ret was NULL.
[`DW_DLE_ATTR_FORM_BAD`]
  The attribute referenced by argument attr was not of a permitted kind.

# SEE ALSO

dwarf(3), dwarf_attr(3), dwarf_formblock(3), dwarf_formref(3), dwarf_formsdata(3), dwarf_formsig8(3), dwarf_formudata(3), dwarf_hasattr(3)

July 24, 2010 | NetBSD 9.5