1.\" $NetBSD: dwarf_diename.3,v 1.2 2014/03/09 16:58:03 christos Exp $ 2.\" 3.\" Copyright (c) 2010 Kai Wang 4.\" All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer. 11.\" 2. Redistributions in binary form must reproduce the above copyright 12.\" notice, this list of conditions and the following disclaimer in the 13.\" documentation and/or other materials provided with the distribution. 14.\" 15.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 16.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 19.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25.\" SUCH DAMAGE. 26.\" 27.\" Id: dwarf_diename.3 2073 2011-10-27 03:30:47Z jkoshy 28.\" 29.Dd March 31, 2010 30.Os 31.Dt DWARF_DIENAME 3 32.Sh NAME 33.Nm dwarf_diename 34.Nd retrieve the name associated with a debugging information entry 35.Sh LIBRARY 36.Lb libdwarf 37.Sh SYNOPSIS 38.In libdwarf.h 39.Ft int 40.Fn dwarf_diename "Dwarf_Die die" "char **ret_name" "Dwarf_Error *err" 41.Sh DESCRIPTION 42Function 43.Fn dwarf_diename 44retrieves a pointer to the NUL-terminated string associated with the 45.Dv DW_AT_name 46attribute of the debugging information entry descriptor referenced by 47argument 48.Ar die . 49If the pointer was successfully retrieved, it is stored in the location 50pointed to by argument 51.Ar ret_name . 52.Sh RETURN VALUES 53Function 54.Fn dwarf_diename 55returns 56.Dv DW_DLV_OK on success. 57.Pp 58If the debugging information entry descriptor denoted by argument 59.Ar die 60does not contain a 61.Dv DW_AT_name 62attribute, the function returns 63.Dv DW_DLV_NO_ENTRY 64and sets argument 65.Ar err . 66For other errors, it returns 67.Dv DW_DLV_ERROR 68and sets argument 69.Ar err . 70.Sh ERRORS 71Function 72.Fn dwarf_diename 73can fail with the following errors: 74.Bl -tag -width ".Bq Er DW_DLE_ARGUMENT" 75.It Bq Er DW_DLE_ARGUMENT 76Either of arguments 77.Ar die 78or 79.Ar ret_name 80was NULL. 81.It Bq Er DW_DLE_NO_ENTRY 82Argument 83.Ar die 84had no 85.Dv DW_AT_name 86attribute. 87.El 88.Sh SEE ALSO 89.Xr dwarf 3 , 90.Xr dwarf_tag 3 , 91.Xr dwarf_dieoffset 3 , 92.Xr dwarf_die_abbrev_code 3 93