DWARF_GET_ARANGE(3)

DWARF_GET_ARANGE(3) | Library Functions Manual | DWARF_GET_ARANGE(3)

# NAME

`dwarf_get_arange` — retrieve the address range descriptor for an address

# LIBRARY

DWARF Access Library (libdwarf, -ldwarf)

# SYNOPSIS

`#include <libdwarf.h>`

int
`dwarf_get_arange`(Dwarf_Arange *ar_list, Dwarf_Unsigned ar_cnt, Dwarf_Addr addr, Dwarf_Arange *ret_ar, Dwarf_Error *err);

# DESCRIPTION

Function `dwarf_get_arange`() searches an array of Dwarf_Arange descriptors for one that covers a given address.

Argument ar_list should point to an array of Dwarf_Arange descriptors.

Argument ar_cnt specifies the number of Dwarf_Arange descriptors in the array pointed to by argument ar_list.

Argument addr specifies the address being looked up.

Argument ret_ar will be used to store the Dwarf_Arange descriptor that covers the given address.

If argument err is not `NULL`, it will be used to store error information in case of an error.

# RETURN VALUES

Function `dwarf_get_arange`() returns `DW_DLV_OK` when it succeeds. It returns `DW_DLV_NO_ENTRY` if there is no Dwarf_Arange descriptor that covers the provided address. In case of an error, it returns `DW_DLV_ERROR` and sets the argument err.

# ERRORS

Function `dwarf_get_arange`() can fail with:

[`DW_DLE_ARGUMENT`]
  One of the arguments dbg, ar_list or ret_ar was `NULL`.
[`DW_DLE_ARGUMENT`]
  Value of argument ar_cnt equals to 0.
[`DW_DLE_NO_ENTRY`]
  A Dwarf_Arange descriptor that covers the given address was not found.

# SEE ALSO

dwarf(3), dwarf_get_arange_cu_header_offset(3), dwarf_get_arange_info(3), dwarf_get_aranges(3), dwarf_get_cu_die_offset(3)

April 16, 2011 | NetBSD 11.0