DWARF_GET_CIE_INFO(3) | Library Functions Manual | DWARF_GET_CIE_INFO(3)

# NAME

`dwarf_get_cie_info` —
retrieve information associated with a CIE descriptor

# LIBRARY

DWARF Access Library (libdwarf, -ldwarf)

# SYNOPSIS

`#include <libdwarf.h>`

int
`dwarf_get_cie_info`(Dwarf_Cie cie, Dwarf_Unsigned *cie_byte_len, Dwarf_Small *version, char **augmentation, Dwarf_Unsigned *caf, Dwarf_Unsigned *daf, Dwarf_Half *ra, Dwarf_Ptr *init_inst, Dwarf_Unsigned *inst_len, Dwarf_Error *err);

# DESCRIPTION

Function `dwarf_get_cie_info`() retrieves the information associated with a given CIE descriptor.

Argument cie should reference a valid DWARF CIE descriptor, such as would be returned by function dwarf_get_cie_of_fde(3).

Argument cie_byte_len should point to a location that will hold the length in bytes of the CIE descriptor itself.

Argument version should point to a location that will hold the version number of the CIE descriptor.

Arugment augmentation should point to a location that will be set to a pointer to a NUL-terminated string containing augmentation data encoded as UTF-8.

Argument caf should point to a location that will hold the code alignment factor recorded in the CIE descriptor.

Arugment daf should point to a location that will hold the data alignment factor recorded in the CIE descriptor.

Argument ra should point to a location that will hold the return address recorded in the CIE descriptor.

Argument init_inst should point to a location that will be set to a pointer to an array of bytes containing the initial instructions associated with the CIE descriptor.

Argument inst_len should point to a location that will hold the length in bytes of the initial instructions returned in argument init_inst.

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

# RETURN VALUES

Function `dwarf_get_cie_info`() returns `DW_DLV_OK` when it succeeds. In case of an error, it returns `DW_DLV_ERROR` and sets the argument err.

# ERRORS

Function `dwarf_get_cie_info`() can fail with:

[`DW_DLE_ARGUMENT`]
  One of the arguments cie, cie_byte_len, version, augmentation, caf, daf, ra, init_inst or inst_len was NULL.

# SEE ALSO

dwarf(3), dwarf_get_cie_index(3), dwarf_get_cie_of_fde(3), dwarf_get_fde_at_pc(3), dwarf_get_fde_info_for_all_regs(3), dwarf_get_fde_info_for_all_regs3(3), dwarf_get_fde_info_for_cfa_reg3(3), dwarf_get_fde_info_for_reg(3), dwarf_get_fde_info_for_reg3(3), dwarf_get_fde_instr_bytes(3), dwarf_get_fde_list(3), dwarf_get_fde_list_eh(3), dwarf_get_fde_n(3), dwarf_get_fde_range(3)

May 29, 2011 | NetBSD 9.0