dwarf_get_relocation_info_count —
return the number of relocation arrays
DWARF Access Library (libdwarf, -ldwarf)
#include
<libdwarf.h>
int
dwarf_get_relocation_info_count(
Dwarf_P_Debug
dbg,
Dwarf_Unsigned *reloc_cnt,
int *drd_buffer_version,
Dwarf_Error *err);
Function
dwarf_get_relocation_info_count()
retrieves the total number of relocation arrays generated by a prior call to
dwarf_transform_to_disk_form(3).
Argument
dbg should reference a DWARF producer
instance allocated using
dwarf_producer_init(3)
or
dwarf_producer_init_b(3).
The
DW_DLC_SYMBOLIC_RELOCATIONS
flag should
have been set on the producer instance.
Argument
reloc_cnt should point to a location
which will be set to the total number of relocation arrays generated.
Argument
drd_buffer_version should point to a
location which will be set to the version number of the relocation structures
returned (see the symbol
DWARF_DRD_BUFFER_VERSION
, defined in the
header file
<libdwarf.h>).
If argument
err is not NULL, it will be used to
store error information in case of an error.
On success, function
dwarf_get_relocation_info_count() returns
DW_DLV_OK
. It returns
DW_DLV_NO_ENTRY
if the
DW_DLC_SYMBOLIC_RELOCATIONS
flag is not set
on the producer instance. In case of an error, function
dwarf_get_relocation_info_count() returns
DW_DLV_ERROR
and sets the argument
err.
Function
dwarf_get_relocation_info_count() can fail
with:
-
-
- [
DW_DLE_ARGUMENT
]
- One of the arguments dbg,
reloc_cnt or
drd_buffer_version was NULL.
-
-
- [
DW_DLE_NO_ENTRY
]
- The
DW_DLC_SYMBOLIC_RELOCATIONS
flag was
not set.
dwarf(3),
dwarf_get_relocation_info(3),
dwarf_producer_init(3),
dwarf_producer_init_b(3),
dwarf_transform_to_disk_form(3)