DWARF_GET_ARANGE(3)

NAME
dwarf_get_arange - retrieve the address range descriptor for an address

LIBRARY
libdwarf

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)