Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
UNW_GET...E_BY_IP(3libunwind) Programming Library  UNW_GET...E_BY_IP(3libunwind)

NAME
     unw_get_elf_filename_by_ip  --  get  backing  elf	filename  by instruction
     pointer

SYNOPSIS
     #include <libunwind.h>

     int unw_get_elf_filename_by_ip(unw_addr_space_t  as,  unw_word_t  ip,  char
     *bufp, size_t len, unw_word_t *offp, void *arg);

DESCRIPTION
     The  unw_get_elf_filename_by_ip()	routine returns the backing elf filename
     of a instruction pointer just like unw_get_elf_filename(), except that  the
     name is looked up by instruction pointer (IP) instead of a cursor.

     The  routine  expects  the  following arguments: as is the address-space in
     which the instruction pointer should be looked up.  For a	look-up  in  the
     local  address-space, unw_local_addr_space can be passed for this argument.
     Argument ip is the instruction-pointer for which the elf filename should be
     looked up. The bufp argument is a pointer to a character buffer that is  at
     least  len  bytes long. This buffer is used to return the elf filename. The
     offp argument is a pointer to a word that is used to return the byte offset
     of the instruction-pointer relative to  the  start  of  the  elf  filename.
     Lastly,  arg is the address space argument that should be used when access-
     ing the address space. It has the same purpose as the argument of the  same
     name  for unw_init_remote().  When accessing the local address space (first
     argument is unw_local_addr_space), NULL must be passed for this argument.

RETURN VALUE
     On successful completion, unw_get_elf_filename_by_ip() returns 0. Otherwise
     the negative value of one of the error codes below is returned.

THREAD AND SIGNAL SAFETY
     unw_get_elf_filename_by_ip() is thread safe. If the local address-space  is
     passed  in argument as, this routine is also safe to use from a signal han-
     dler.

ERRORS
     UNW_EUNSPEC
	     An unspecified error occurred.

     UNW_ENOINFO
	     Libunwind was unable to determine the elf filename of the	instruc-
	    tion pointer.

     UNW_ENOMEM
	     The elf filename is too long to fit in the buffer provided. A trun-
	    cated version of the name has been returned.

SEE ALSO
     libunwind(3libunwind),	 unw_get_elf_filename(3libunwind),	unw_cre-
     ate_addr_space(3libunwind), unw_init_remote(3libunwind)

AUTHOR
     Xiang Lin
     Email: myd.xia@gmail.com

Programming Library		15 September 2023  UNW_GET...E_BY_IP(3libunwind)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=unw_get_elf_filename_by_ip&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help