aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2009-03-10 12:15:10 +0000
committerHarald Welte <laforge@gnumonks.org>2009-03-10 12:15:10 +0000
commit32201c1aea68f1d89371bb8c6a8e3c0d7dba019e (patch)
treeccaa486b6f5e2136eadbd3065c28396580ef5973
parenta27d8d2a91612683373b7619d54a027e552c92d5 (diff)
move is_ipaccess_bts() and parse_btstype9) to gsm_data.c
-rw-r--r--include/openbsc/gsm_data.h15
-rw-r--r--src/bsc_hack.c19
-rw-r--r--src/gsm_04_08.c12
-rw-r--r--src/gsm_data.c26
4 files changed, 41 insertions, 31 deletions
diff --git a/include/openbsc/gsm_data.h b/include/openbsc/gsm_data.h
index b4ea22708..84d33d2c4 100644
--- a/include/openbsc/gsm_data.h
+++ b/include/openbsc/gsm_data.h
@@ -333,4 +333,19 @@ enum gsm_e1_event {
void set_ts_e1link(struct gsm_bts_trx_ts *ts, u_int8_t e1_nr,
u_int8_t e1_ts, u_int8_t e1_ts_ss);
+enum gsm_bts_type parse_btstype(char *arg);
+char *btstype2str(enum gsm_bts_type type);
+
+static inline int is_ipaccess_bts(struct gsm_bts *bts)
+{
+ switch (bts->type) {
+ case GSM_BTS_TYPE_NANOBTS_900:
+ case GSM_BTS_TYPE_NANOBTS_1800:
+ return 1;
+ default:
+ break;
+ }
+ return 0;
+}
+
#endif
diff --git a/src/bsc_hack.c b/src/bsc_hack.c
index 81ff7f0bd..6967afa14 100644
--- a/src/bsc_hack.c
+++ b/src/bsc_hack.c
@@ -1,6 +1,6 @@
/* A hackish minimal BSC (+MSC +HLR) implementation */
-/* (C) 2008 by Harald Welte <laforge@gnumonks.org>
+/* (C) 2008-2009 by Harald Welte <laforge@gnumonks.org>
* (C) 2009 by Holger Hans Peter Freyther <zecke@selfish.org>
* All Rights Reserved
*
@@ -963,23 +963,6 @@ static void print_help()
printf(" -h --help this text\n");
}
-static const char *bts_types[] = {
- [GSM_BTS_TYPE_UNKNOWN] = "unknown",
- [GSM_BTS_TYPE_BS11] = "bs11",
- [GSM_BTS_TYPE_NANOBTS_900] = "nanobts900",
- [GSM_BTS_TYPE_NANOBTS_1800] = "nanobts1800",
-};
-
-enum gsm_bts_type parse_btstype(char *arg)
-{
- int i;
- for (i = 0; i < ARRAY_SIZE(bts_types); i++) {
- if (!strcmp(arg, bts_types[i]))
- return i;
- }
- return GSM_BTS_TYPE_BS11; /* Default: BS11 */
-}
-
static void handle_options(int argc, char** argv)
{
while (1) {
diff --git a/src/gsm_04_08.c b/src/gsm_04_08.c
index d5a5bee2e..deafe7b2f 100644
--- a/src/gsm_04_08.c
+++ b/src/gsm_04_08.c
@@ -85,18 +85,6 @@ static const struct tlv_definition rsl_att_tlvdef = {
},
};
-static inline int is_ipaccess_bts(struct gsm_bts *bts)
-{
- switch (bts->type) {
- case GSM_BTS_TYPE_NANOBTS_900:
- case GSM_BTS_TYPE_NANOBTS_1800:
- return 1;
- default:
- break;
- }
- return 0;
-}
-
static int gsm48_tx_simple(struct gsm_lchan *lchan,
u_int8_t pdisc, u_int8_t msg_type);
static void schedule_reject(struct gsm_lchan *lchan);
diff --git a/src/gsm_data.c b/src/gsm_data.c
index e6447d981..136f31b66 100644
--- a/src/gsm_data.c
+++ b/src/gsm_data.c
@@ -1,4 +1,4 @@
-/* (C) 2008 by Harald Welte <laforge@gnumonks.org>
+/* (C) 2008-2009 by Harald Welte <laforge@gnumonks.org>
*
* All Rights Reserved
*
@@ -155,3 +155,27 @@ char *gsm_ts_name(struct gsm_bts_trx_ts *ts)
return ts2str;
}
+
+static const char *bts_types[] = {
+ [GSM_BTS_TYPE_UNKNOWN] = "unknown",
+ [GSM_BTS_TYPE_BS11] = "bs11",
+ [GSM_BTS_TYPE_NANOBTS_900] = "nanobts900",
+ [GSM_BTS_TYPE_NANOBTS_1800] = "nanobts1800",
+};
+
+enum gsm_bts_type parse_btstype(char *arg)
+{
+ int i;
+ for (i = 0; i < ARRAY_SIZE(bts_types); i++) {
+ if (!strcmp(arg, bts_types[i]))
+ return i;
+ }
+ return GSM_BTS_TYPE_BS11; /* Default: BS11 */
+}
+
+char *btstype2str(enum gsm_bts_type type)
+{
+ if (type > ARRAY_SIZE(bts_types))
+ return "undefined";
+ return bts_types[type];
+}