diff options
author | Pablo Neira Ayuso <pablo@gnumonks.org> | 2011-03-23 18:08:08 +0100 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2011-03-23 18:08:08 +0100 |
commit | fba495e5f6084800c076e0ecae990ed9e6483530 (patch) | |
tree | 0f9513f0f54bd01ccfdceb172b4fe14b3cabd16b /src | |
parent | 04139f14b6197e3ec996133a945af3fa8a68fb7a (diff) |
This patch moves the GSM-specific functions to the new library
libosmogsm which is provided by libosmocore.
I have also moved generate_backtrace() to backtrace.c instead
of gsm_utils.c, otherwise the timer and msgfile tests depend on
libosmogsm.
Signed-off-by: Pablo Neira Ayuso <pablo@gnumonks.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile.am | 14 | ||||
-rw-r--r-- | src/backtrace.c | 50 | ||||
-rw-r--r-- | src/gsm/Makefile.am | 13 | ||||
-rw-r--r-- | src/gsm/comp128.c (renamed from src/comp128.c) | 0 | ||||
-rw-r--r-- | src/gsm/gprs_cipher_core.c (renamed from src/gprs_cipher_core.c) | 0 | ||||
-rw-r--r-- | src/gsm/gsm0480.c (renamed from src/gsm0480.c) | 0 | ||||
-rw-r--r-- | src/gsm/gsm0808.c (renamed from src/gsm0808.c) | 0 | ||||
-rw-r--r-- | src/gsm/gsm48.c (renamed from src/gsm48.c) | 0 | ||||
-rw-r--r-- | src/gsm/gsm48_ie.c (renamed from src/gsm48_ie.c) | 0 | ||||
-rw-r--r-- | src/gsm/gsm_utils.c (renamed from src/gsm_utils.c) | 23 | ||||
-rw-r--r-- | src/gsm/rsl.c (renamed from src/rsl.c) | 0 | ||||
-rw-r--r-- | src/gsm/rxlev_stat.c (renamed from src/rxlev_stat.c) | 0 | ||||
-rw-r--r-- | src/gsm/tlv_parser.c (renamed from src/tlv_parser.c) | 0 | ||||
-rw-r--r-- | src/panic.c | 1 |
14 files changed, 71 insertions, 30 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index 94492c53..c5c8a21d 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,4 +1,4 @@ -SUBDIRS=. vty codec +SUBDIRS=. vty codec gsm # This is _NOT_ the library release version, it's an API version. # Please read Chapter 6 "Library interface versions" of the libtool documentation before making any modification @@ -9,12 +9,12 @@ AM_CFLAGS = -fPIC -Wall lib_LTLIBRARIES = libosmocore.la -libosmocore_la_SOURCES = timer.c select.c signal.c msgb.c rxlev_stat.c bits.c \ - tlv_parser.c bitvec.c comp128.c gsm_utils.c statistics.c \ - write_queue.c utils.c rsl.c gsm48.c gsm48_ie.c \ - logging.c logging_syslog.c gsm0808.c rate_ctr.c \ - gsmtap_util.c gprs_cipher_core.c crc16.c panic.c \ - process.c gsm0480.c +libosmocore_la_SOURCES = timer.c select.c signal.c msgb.c bits.c \ + bitvec.c statistics.c \ + write_queue.c utils.c \ + logging.c logging_syslog.c rate_ctr.c \ + gsmtap_util.c crc16.c panic.c backtrace.c \ + process.c if ENABLE_PLUGIN libosmocore_la_SOURCES += plugin.c diff --git a/src/backtrace.c b/src/backtrace.c new file mode 100644 index 00000000..42394453 --- /dev/null +++ b/src/backtrace.c @@ -0,0 +1,50 @@ +/* + * (C) 2008 by Daniel Willmann <daniel@totalueberwachung.de> + * (C) 2009 by Holger Hans Peter Freyther <zecke@selfish.org> + * (C) 2009-2010 by Harald Welte <laforge@gnumonks.org> + * (C) 2010 by Nico Golde <nico@ngolde.de> + * + * All Rights Reserved + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + * + */ + +#include <stdio.h> +#include <stdlib.h> +#include <osmocore/utils.h> +#include "config.h" + +#ifdef HAVE_EXECINFO_H +#include <execinfo.h> +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); +} +#endif diff --git a/src/gsm/Makefile.am b/src/gsm/Makefile.am new file mode 100644 index 00000000..a8c2e569 --- /dev/null +++ b/src/gsm/Makefile.am @@ -0,0 +1,13 @@ +# This is _NOT_ the library release version, it's an API version. +# Please read Chapter 6 "Library interface versions" of the libtool documentation before making any modification +LIBVERSION=0:0:0 + +INCLUDES = $(all_includes) -I$(top_srcdir)/include +AM_CFLAGS = -fPIC -Wall + +lib_LTLIBRARIES = libosmogsm.la + +libosmogsm_la_SOURCES = rxlev_stat.c tlv_parser.c comp128.c gsm_utils.c \ + rsl.c gsm48.c gsm48_ie.c gsm0808.c \ + gprs_cipher_core.c gsm0480.c +libosmogsm_la_LIBADD = $(top_builddir)/src/libosmocore.la diff --git a/src/comp128.c b/src/gsm/comp128.c index 5d5680c7..5d5680c7 100644 --- a/src/comp128.c +++ b/src/gsm/comp128.c diff --git a/src/gprs_cipher_core.c b/src/gsm/gprs_cipher_core.c index 6174bd72..6174bd72 100644 --- a/src/gprs_cipher_core.c +++ b/src/gsm/gprs_cipher_core.c diff --git a/src/gsm0480.c b/src/gsm/gsm0480.c index b6b345cb..b6b345cb 100644 --- a/src/gsm0480.c +++ b/src/gsm/gsm0480.c diff --git a/src/gsm0808.c b/src/gsm/gsm0808.c index dc450cc4..dc450cc4 100644 --- a/src/gsm0808.c +++ b/src/gsm/gsm0808.c diff --git a/src/gsm48.c b/src/gsm/gsm48.c index daec4f39..daec4f39 100644 --- a/src/gsm48.c +++ b/src/gsm/gsm48.c diff --git a/src/gsm48_ie.c b/src/gsm/gsm48_ie.c index 0e270881..0e270881 100644 --- a/src/gsm48_ie.c +++ b/src/gsm/gsm48_ie.c diff --git a/src/gsm_utils.c b/src/gsm/gsm_utils.c index 31e3cd69..54a13ad8 100644 --- a/src/gsm_utils.c +++ b/src/gsm/gsm_utils.c @@ -334,29 +334,6 @@ enum gsm_band gsm_band_parse(const char* mhz) } } - -#ifdef HAVE_EXECINFO_H -#include <execinfo.h> -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); -} -#endif - enum gsm_band gsm_arfcn2band(uint16_t arfcn) { int is_pcs = arfcn & ARFCN_PCS; diff --git a/src/rsl.c b/src/gsm/rsl.c index 3bfeffb9..3bfeffb9 100644 --- a/src/rsl.c +++ b/src/gsm/rsl.c diff --git a/src/rxlev_stat.c b/src/gsm/rxlev_stat.c index b474aaa8..b474aaa8 100644 --- a/src/rxlev_stat.c +++ b/src/gsm/rxlev_stat.c diff --git a/src/tlv_parser.c b/src/gsm/tlv_parser.c index bbef7a9a..bbef7a9a 100644 --- a/src/tlv_parser.c +++ b/src/gsm/tlv_parser.c diff --git a/src/panic.c b/src/panic.c index 5fb7b565..21e8fd56 100644 --- a/src/panic.c +++ b/src/panic.c @@ -22,6 +22,7 @@ #include <osmocore/gsm_utils.h> #include <osmocore/panic.h> +#include <osmocore/backtrace.h> #include "../config.h" |