UNW_SET_ITERATE_PHDR_FUNCTION(3libunwind) Programming Library NAME unw_set_iterate_phdr_function -- set dl_iterate_phdr implementation SYNOPSIS #include typedef int (*unw_iterate_phdr_callback_t)(struct dl_phdr_info *, size_t, void *); typedef int (*unw_iterate_phdr_func_t)(unw_iterate_phdr_callback_t, void *); void unw_set_iterate_phdr_function(unw_addr_space_t as, unw_iterate_phdr_func_t function); DESCRIPTION The unw_set_iterate_phdr_function() routine sets the dl_iterate_phdr implementation of address space as to the function by argument function. The function will be called whenever libunwind needs to iterate over the program headers of the application. This is normally done by calling dl_iterate_phdr, but this function is not signal safe. With the help of a custom implementation caching and iterating over the program headers is also possible in an signal-safe manner. Though the burden lies on the user of libunwind. THREAD AND SIGNAL SAFETY unw_set_iterate_phdr_function() is thread safe. If the local address space is passed in argument as, this routine is also safe to use from a signal handler. SEE ALSO libunwind(3libunwind), unw_create_addr_space(3libunwind), dl_iterate_phdr(3libunwind), AUTHOR Bert Wesarg Email: bert.wesarg@googlemail.com WWW: http://www.nongnu.org/libunwind/. Programming Library 29 August 2023 UNW_SET_ITERATE_PHDR_FUNCTION(3libunwind)