diff options
author | Tilghman Lesher <tilghman@meg.abyt.es> | 2010-12-18 00:08:13 +0000 |
---|---|---|
committer | Tilghman Lesher <tilghman@meg.abyt.es> | 2010-12-18 00:08:13 +0000 |
commit | b98e47d1195bd6e1da8aae20844095bec1d88847 (patch) | |
tree | 6df839e0e6f2e1b5ae9c9524ed3942edd3d562e3 /include | |
parent | d8744246aa377d2275f6f72e745ee11bdc13bac8 (diff) |
Merged revisions 298960 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
................
r298960 | tilghman | 2010-12-17 17:52:04 -0600 (Fri, 17 Dec 2010) | 20 lines
Merged revisions 298957 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2
................
r298957 | tilghman | 2010-12-17 17:30:55 -0600 (Fri, 17 Dec 2010) | 13 lines
Merged revisions 298905 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r298905 | tilghman | 2010-12-17 15:40:56 -0600 (Fri, 17 Dec 2010) | 6 lines
Let Asterisk find better backtrace information with libbfd.
The menuselect option BETTER_BACKTRACES, if enabled, will use libbfd to search
for better symbol information within both the Asterisk binary, as well as
loaded modules, to assist when using inline backtraces to track down problems.
Review: https://reviewboard.asterisk.org/r/1055/
........
................
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@298961 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'include')
-rw-r--r-- | include/asterisk/autoconfig.h.in | 6 | ||||
-rw-r--r-- | include/asterisk/logger.h | 10 | ||||
-rw-r--r-- | include/asterisk/utils.h | 9 |
3 files changed, 25 insertions, 0 deletions
diff --git a/include/asterisk/autoconfig.h.in b/include/asterisk/autoconfig.h.in index 5ef3dc15e..d59eef277 100644 --- a/include/asterisk/autoconfig.h.in +++ b/include/asterisk/autoconfig.h.in @@ -107,6 +107,9 @@ /* Define to 1 if your GCC C compiler supports the 'weakref' attribute. */ #undef HAVE_ATTRIBUTE_weakref +/* Define to 1 if you have the Debug symbol decoding library. */ +#undef HAVE_BFD + /* Define to 1 if you have the Stack Backtrace library. */ #undef HAVE_BKTR @@ -168,6 +171,9 @@ */ #undef HAVE_DIRENT_H +/* Define to 1 if your system has the dladdr() GNU extension */ +#undef HAVE_DLADDR + /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ #undef HAVE_DOPRNT diff --git a/include/asterisk/logger.h b/include/asterisk/logger.h index 886c43ce0..91824d704 100644 --- a/include/asterisk/logger.h +++ b/include/asterisk/logger.h @@ -296,6 +296,16 @@ int ast_bt_get_addresses(struct ast_bt *bt); */ void *ast_bt_destroy(struct ast_bt *bt); +/* \brief Retrieve symbols for a set of backtrace addresses + * + * \param addresses A list of addresses, such as the ->addresses structure element of struct ast_bt. + * \param num_frames Number of addresses in the addresses list + * \retval NULL Unable to allocate memory + * \return List of strings + * \since 1.6.2.16 + */ +char **ast_bt_get_symbols(void **addresses, size_t num_frames); + #endif /* HAVE_BKTR */ #endif /* _LOGGER_BACKTRACE_H */ diff --git a/include/asterisk/utils.h b/include/asterisk/utils.h index 97f32bf67..3d3f18f08 100644 --- a/include/asterisk/utils.h +++ b/include/asterisk/utils.h @@ -765,4 +765,13 @@ int ast_eid_cmp(const struct ast_eid *eid1, const struct ast_eid *eid2); */ int ast_get_tid(void); +/*!\brief Resolve a binary to a full pathname + * \param binary Name of the executable to resolve + * \param fullpath Buffer to hold the complete pathname + * \param fullpath_size Size of \a fullpath + * \retval NULL \a binary was not found or the environment variable PATH is not set + * \return \a fullpath + */ +char *ast_utils_which(const char *binary, char *fullpath, size_t fullpath_size); + #endif /* _ASTERISK_UTILS_H */ |