diff options
author | Harald Welte <laforge@gnumonks.org> | 2009-11-27 09:19:21 +0100 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2009-11-27 09:19:21 +0100 |
commit | 39a4f047c89ceb111c1756596c712a57048154e3 (patch) | |
tree | 9c237408c22b7635903884af2456f9eec5cdcc4a /openbsc/src/gsm_utils.c | |
parent | 260b7ddb239d0d497ee7bb7c8c93d52a1c0fe88c (diff) | |
parent | 1a79d364401dfad2a71f1e61ff13a3861e3da46e (diff) |
Merge remote branch 'origin/master' into the lcr_rtp brancheversberg/lcr_rtp
Conflicts:
openbsc/src/Makefile.am
Diffstat (limited to 'openbsc/src/gsm_utils.c')
-rw-r--r-- | openbsc/src/gsm_utils.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/openbsc/src/gsm_utils.c b/openbsc/src/gsm_utils.c index de18dba26..ddfd7f3de 100644 --- a/openbsc/src/gsm_utils.c +++ b/openbsc/src/gsm_utils.c @@ -23,8 +23,10 @@ #include <openbsc/gsm_data.h> #include <openbsc/gsm_utils.h> +#include <execinfo.h> #include <stdlib.h> #include <string.h> +#include <stdio.h> #include <errno.h> /* GSM 03.38 6.2.1 Charachter packing */ @@ -148,4 +150,21 @@ int ms_pwr_dbm(enum gsm_band band, u_int8_t lvl) return -EINVAL; } +void generate_backtrace() +{ + int i, nptrs; + void *buffer[100]; + char **strings; + + nptrs = backtrace(buffer, ARRAY_SIZE(buffer)); + printf("backtrace() returned %d addresses\n", nptrs); + + strings = backtrace_symbols(buffer, nptrs); + if (!strings) + return; + for (i = 1; i < nptrs; i++) + printf("%s\n", strings[i]); + + free(strings); +} |