diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/ipaccess/ipaccess-config.c | 14 | ||||
-rw-r--r-- | src/ipaccess/ipaccess-proxy.c | 14 | ||||
-rw-r--r-- | src/libcommon/Makefile.am | 1 | ||||
-rw-r--r-- | src/libcommon/debug.c | 239 | ||||
-rw-r--r-- | src/osmo-bsc/osmo_bsc_main.c | 186 | ||||
-rw-r--r-- | src/osmo-bsc_nat/bsc_nat.c | 33 | ||||
-rw-r--r-- | src/utils/bs11_config.c | 14 |
7 files changed, 261 insertions, 240 deletions
diff --git a/src/ipaccess/ipaccess-config.c b/src/ipaccess/ipaccess-config.c index 957a5bb2c..7e8cafdba 100644 --- a/src/ipaccess/ipaccess-config.c +++ b/src/ipaccess/ipaccess-config.c @@ -838,6 +838,20 @@ static void print_options(void) extern void bts_model_nanobts_init(); +static const struct log_info_cat log_categories[] = { + [DNM] = { + .name = "DNM", + .description = "A-bis Network Management / O&M (NM/OML)", + .color = "\033[1;36m", + .enabled = 1, .loglevel = LOGL_INFO, + }, +}; + +static const struct log_info log_info = { + .cat = log_categories, + .num_cat = ARRAY_SIZE(log_categories), +}; + int main(int argc, char **argv) { struct gsm_bts *bts; diff --git a/src/ipaccess/ipaccess-proxy.c b/src/ipaccess/ipaccess-proxy.c index b45b5439f..40749ee7a 100644 --- a/src/ipaccess/ipaccess-proxy.c +++ b/src/ipaccess/ipaccess-proxy.c @@ -1200,6 +1200,20 @@ static void handle_options(int argc, char** argv) } } +static const struct log_info_cat log_categories[] = { + [DMM] = { + .name = "DMM", + .description = "Layer3 Mobility Management (MM)", + .color = "\033[1;33m", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, +}; + +const struct log_info log_info = { + .cat = log_categories, + .num_cat = ARRAY_SIZE(log_categories), +}; + int main(int argc, char **argv) { int rc; diff --git a/src/libcommon/Makefile.am b/src/libcommon/Makefile.am index 1a73e6cb5..1f7f5c440 100644 --- a/src/libcommon/Makefile.am +++ b/src/libcommon/Makefile.am @@ -20,7 +20,6 @@ noinst_LIBRARIES = \ $(NULL) libcommon_a_SOURCES = \ - debug.c \ gsm_data.c \ gsm_data_shared.c \ socket.c \ diff --git a/src/libcommon/debug.c b/src/libcommon/debug.c deleted file mode 100644 index b5a490ba9..000000000 --- a/src/libcommon/debug.c +++ /dev/null @@ -1,239 +0,0 @@ -/* OpenBSC Debugging/Logging support code */ - -/* (C) 2008-2010 by Harald Welte <laforge@gnumonks.org> - * (C) 2008 by Holger Hans Peter Freyther <zecke@selfish.org> - * All Rights Reserved - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation; either version 3 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 Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ - -#include <stdarg.h> -#include <stdlib.h> -#include <stdio.h> -#include <string.h> -#include <strings.h> -#include <time.h> -#include <errno.h> - -#include <osmocom/core/talloc.h> -#include <osmocom/core/utils.h> -#include <osmocom/core/logging.h> -#include <osmocom/gprs/gprs_msgb.h> -#include <osmocom/bsc/gsm_data.h> -#include <osmocom/bsc/debug.h> - -/* default categories */ -static const struct log_info_cat default_categories[] = { - [DRLL] = { - .name = "DRLL", - .description = "A-bis Radio Link Layer (RLL)", - .color = "\033[1;31m", - .enabled = 1, .loglevel = LOGL_NOTICE, - }, - [DCC] = { - .name = "DCC", - .description = "Layer3 Call Control (CC)", - .color = "\033[1;32m", - .enabled = 1, .loglevel = LOGL_NOTICE, - }, - [DMM] = { - .name = "DMM", - .description = "Layer3 Mobility Management (MM)", - .color = "\033[1;33m", - .enabled = 1, .loglevel = LOGL_NOTICE, - }, - [DRR] = { - .name = "DRR", - .description = "Layer3 Radio Resource (RR)", - .color = "\033[1;34m", - .enabled = 1, .loglevel = LOGL_NOTICE, - }, - [DRSL] = { - .name = "DRSL", - .description = "A-bis Radio Siganlling Link (RSL)", - .color = "\033[1;35m", - .enabled = 1, .loglevel = LOGL_NOTICE, - }, - [DNM] = { - .name = "DNM", - .description = "A-bis Network Management / O&M (NM/OML)", - .color = "\033[1;36m", - .enabled = 1, .loglevel = LOGL_INFO, - }, - [DMNCC] = { - .name = "DMNCC", - .description = "MNCC API for Call Control application", - .color = "\033[1;39m", - .enabled = 1, .loglevel = LOGL_NOTICE, - }, - [DPAG] = { - .name = "DPAG", - .description = "Paging Subsystem", - .color = "\033[1;38m", - .enabled = 1, .loglevel = LOGL_NOTICE, - }, - [DMEAS] = { - .name = "DMEAS", - .description = "Radio Measurement Processing", - .enabled = 0, .loglevel = LOGL_NOTICE, - }, - [DSCCP] = { - .name = "DSCCP", - .description = "SCCP Protocol", - .enabled = 1, .loglevel = LOGL_NOTICE, - }, - [DMSC] = { - .name = "DMSC", - .description = "Mobile Switching Center", - .enabled = 1, .loglevel = LOGL_NOTICE, - }, - [DMGCP] = { - .name = "DMGCP", - .description = "Media Gateway Control Protocol", - .enabled = 1, .loglevel = LOGL_NOTICE, - }, - [DHO] = { - .name = "DHO", - .description = "Hand-Over Process", - .color = "\033[1;38m", - .enabled = 1, .loglevel = LOGL_NOTICE, - }, - [DHODEC] = { - .name = "DHODEC", - .description = "Hand-Over Decision", - .color = "\033[1;38m", - .enabled = 1, .loglevel = LOGL_NOTICE, - }, - [DDB] = { - .name = "DDB", - .description = "Database Layer", - .enabled = 1, .loglevel = LOGL_NOTICE, - }, - [DREF] = { - .name = "DREF", - .description = "Reference Counting", - .enabled = 0, .loglevel = LOGL_NOTICE, - }, - [DGPRS] = { - .name = "DGPRS", - .description = "GPRS Packet Service", - .enabled = 1, .loglevel = LOGL_DEBUG, - }, - [DNS] = { - .name = "DNS", - .description = "GPRS Network Service (NS)", - .enabled = 1, .loglevel = LOGL_INFO, - }, - [DBSSGP] = { - .name = "DBSSGP", - .description = "GPRS BSS Gateway Protocol (BSSGP)", - .enabled = 1, .loglevel = LOGL_DEBUG, - }, - [DLLC] = { - .name = "DLLC", - .description = "GPRS Logical Link Control Protocol (LLC)", - .enabled = 1, .loglevel = LOGL_DEBUG, - }, - [DSNDCP] = { - .name = "DSNDCP", - .description = "GPRS Sub-Network Dependent Control Protocol (SNDCP)", - .enabled = 1, .loglevel = LOGL_DEBUG, - }, - [DNAT] = { - .name = "DNAT", - .description = "GSM 08.08 NAT/Multiplexer", - .enabled = 1, .loglevel = LOGL_NOTICE, - }, - [DCTRL] = { - .name = "DCTRL", - .description = "Control interface", - .enabled = 1, .loglevel = LOGL_NOTICE, - }, - [DSMPP] = { - .name = "DSMPP", - .description = "SMPP interface for external SMS apps", - .enabled = 1, .loglevel = LOGL_DEBUG, - }, - [DFILTER] = { - .name = "DFILTER", - .description = "BSC/NAT IMSI based filtering", - .enabled = 1, .loglevel = LOGL_DEBUG, - }, - [DRANAP] = { - .name = "DRANAP", - .description = "Radio Access Network Application Part Protocol", - .enabled = 1, .loglevel = LOGL_DEBUG, - }, - [DSUA] = { - .name = "DSUA", - .description = "SCCP User Adaptation Protocol", - .enabled = 1, .loglevel = LOGL_DEBUG, - }, - [DPCU] = { - .name = "DPCU", - .description = "PCU Interface", - .enabled = 1, .loglevel = LOGL_DEBUG, - }, - [DVLR] = { - .name = "DVLR", - .description = "Visitor Location Register", - .enabled = 1, .loglevel = LOGL_DEBUG, - }, - [DIUCS] = { - .name = "DIUCS", - .description = "Iu-CS Protocol", - .enabled = 1, .loglevel = LOGL_DEBUG, - }, - [DSIGTRAN] = { - .name = "DSIGTRAN", - .description = "SIGTRAN Signalling Transport", - .color = "\033[1;29m", - .enabled = 1, .loglevel = LOGL_DEBUG, - }, -}; - -static int filter_fn(const struct log_context *ctx, struct log_target *tar) -{ - const struct vlr_subscr *vsub = ctx->ctx[LOG_CTX_VLR_SUBSCR]; - const struct bsc_subscr *bsub = ctx->ctx[LOG_CTX_BSC_SUBSCR]; - const struct gprs_nsvc *nsvc = ctx->ctx[LOG_CTX_GB_NSVC]; - const struct gprs_nsvc *bvc = ctx->ctx[LOG_CTX_GB_BVC]; - - if ((tar->filter_map & (1 << LOG_FLT_VLR_SUBSCR)) != 0 - && vsub && vsub == tar->filter_data[LOG_FLT_VLR_SUBSCR]) - return 1; - - if ((tar->filter_map & (1 << LOG_FLT_BSC_SUBSCR)) != 0 - && bsub && bsub == tar->filter_data[LOG_FLT_BSC_SUBSCR]) - return 1; - - /* Filter on the NS Virtual Connection */ - if ((tar->filter_map & (1 << LOG_FLT_GB_NSVC)) != 0 - && nsvc && (nsvc == tar->filter_data[LOG_FLT_GB_NSVC])) - return 1; - - /* Filter on the NS Virtual Connection */ - if ((tar->filter_map & (1 << LOG_FLT_GB_BVC)) != 0 - && bvc && (bvc == tar->filter_data[LOG_FLT_GB_BVC])) - return 1; - - return 0; -} - -const struct log_info log_info = { - .filter_fn = filter_fn, - .cat = default_categories, - .num_cat = ARRAY_SIZE(default_categories), -}; diff --git a/src/osmo-bsc/osmo_bsc_main.c b/src/osmo-bsc/osmo_bsc_main.c index 4b53f2d13..a6ea56c07 100644 --- a/src/osmo-bsc/osmo_bsc_main.c +++ b/src/osmo-bsc/osmo_bsc_main.c @@ -278,6 +278,192 @@ static void signal_handler(int signal) } } +static const struct log_info_cat osmo_bsc_categories[] = { + [DRLL] = { + .name = "DRLL", + .description = "A-bis Radio Link Layer (RLL)", + .color = "\033[1;31m", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DCC] = { + .name = "DCC", + .description = "Layer3 Call Control (CC)", + .color = "\033[1;32m", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DMM] = { + .name = "DMM", + .description = "Layer3 Mobility Management (MM)", + .color = "\033[1;33m", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DRR] = { + .name = "DRR", + .description = "Layer3 Radio Resource (RR)", + .color = "\033[1;34m", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DRSL] = { + .name = "DRSL", + .description = "A-bis Radio Siganlling Link (RSL)", + .color = "\033[1;35m", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DNM] = { + .name = "DNM", + .description = "A-bis Network Management / O&M (NM/OML)", + .color = "\033[1;36m", + .enabled = 1, .loglevel = LOGL_INFO, + }, + [DMNCC] = { + .name = "DMNCC", + .description = "MNCC API for Call Control application", + .color = "\033[1;39m", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DPAG] = { + .name = "DPAG", + .description = "Paging Subsystem", + .color = "\033[1;38m", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DMEAS] = { + .name = "DMEAS", + .description = "Radio Measurement Processing", + .enabled = 0, .loglevel = LOGL_NOTICE, + }, + [DSCCP] = { + .name = "DSCCP", + .description = "SCCP Protocol", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DMSC] = { + .name = "DMSC", + .description = "Mobile Switching Center", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DMGCP] = { + .name = "DMGCP", + .description = "Media Gateway Control Protocol", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DHO] = { + .name = "DHO", + .description = "Hand-Over Process", + .color = "\033[1;38m", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DHODEC] = { + .name = "DHODEC", + .description = "Hand-Over Decision", + .color = "\033[1;38m", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DDB] = { + .name = "DDB", + .description = "Database Layer", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DREF] = { + .name = "DREF", + .description = "Reference Counting", + .enabled = 0, .loglevel = LOGL_NOTICE, + }, + [DGPRS] = { + .name = "DGPRS", + .description = "GPRS Packet Service", + .enabled = 1, .loglevel = LOGL_DEBUG, + }, + [DNS] = { + .name = "DNS", + .description = "GPRS Network Service (NS)", + .enabled = 1, .loglevel = LOGL_INFO, + }, + [DBSSGP] = { + .name = "DBSSGP", + .description = "GPRS BSS Gateway Protocol (BSSGP)", + .enabled = 1, .loglevel = LOGL_DEBUG, + }, + [DLLC] = { + .name = "DLLC", + .description = "GPRS Logical Link Control Protocol (LLC)", + .enabled = 1, .loglevel = LOGL_DEBUG, + }, + [DSNDCP] = { + .name = "DSNDCP", + .description = "GPRS Sub-Network Dependent Control Protocol (SNDCP)", + .enabled = 1, .loglevel = LOGL_DEBUG, + }, + [DNAT] = { + .name = "DNAT", + .description = "GSM 08.08 NAT/Multiplexer", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DCTRL] = { + .name = "DCTRL", + .description = "Control interface", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DSMPP] = { + .name = "DSMPP", + .description = "SMPP interface for external SMS apps", + .enabled = 1, .loglevel = LOGL_DEBUG, + }, + [DFILTER] = { + .name = "DFILTER", + .description = "BSC/NAT IMSI based filtering", + .enabled = 1, .loglevel = LOGL_DEBUG, + }, + [DRANAP] = { + .name = "DRANAP", + .description = "Radio Access Network Application Part Protocol", + .enabled = 1, .loglevel = LOGL_DEBUG, + }, + [DSUA] = { + .name = "DSUA", + .description = "SCCP User Adaptation Protocol", + .enabled = 1, .loglevel = LOGL_DEBUG, + }, + [DPCU] = { + .name = "DPCU", + .description = "PCU Interface", + .enabled = 1, .loglevel = LOGL_DEBUG, + }, + [DVLR] = { + .name = "DVLR", + .description = "Visitor Location Register", + .enabled = 1, .loglevel = LOGL_DEBUG, + }, + [DIUCS] = { + .name = "DIUCS", + .description = "Iu-CS Protocol", + .enabled = 1, .loglevel = LOGL_DEBUG, + }, + [DSIGTRAN] = { + .name = "DSIGTRAN", + .description = "SIGTRAN Signalling Transport", + .color = "\033[1;29m", + .enabled = 1, .loglevel = LOGL_DEBUG, + }, +}; + +static int filter_fn(const struct log_context *ctx, struct log_target *tar) +{ + const struct bsc_subscr *bsub = ctx->ctx[LOG_CTX_BSC_SUBSCR]; + + if ((tar->filter_map & (1 << LOG_FLT_BSC_SUBSCR)) != 0 + && bsub && bsub == tar->filter_data[LOG_FLT_BSC_SUBSCR]) + return 1; + + return 0; +} + +const struct log_info log_info = { + .filter_fn = filter_fn, + .cat = osmo_bsc_categories, + .num_cat = ARRAY_SIZE(osmo_bsc_categories), +}; + int main(int argc, char **argv) { struct bsc_msc_data *msc; diff --git a/src/osmo-bsc_nat/bsc_nat.c b/src/osmo-bsc_nat/bsc_nat.c index 87db68478..c1c791392 100644 --- a/src/osmo-bsc_nat/bsc_nat.c +++ b/src/osmo-bsc_nat/bsc_nat.c @@ -1627,6 +1627,39 @@ static struct vty_app_info vty_info = { .is_config_node = bsc_vty_is_config_node, }; +static const struct log_info_cat log_categories[] = { + [DNM] = { + .name = "DNM", + .description = "A-bis Network Management / O&M (NM/OML)", + .color = "\033[1;36m", + .enabled = 1, .loglevel = LOGL_INFO, + }, + [DNAT] = { + .name = "DNAT", + .description = "GSM 08.08 NAT/Multiplexer", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DMSC] = { + .name = "DMSC", + .description = "Mobile Switching Center", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DCTRL] = { + .name = "DCTRL", + .description = "Control interface", + .enabled = 1, .loglevel = LOGL_NOTICE, + }, + [DFILTER] = { + .name = "DFILTER", + .description = "BSC/NAT IMSI based filtering", + .enabled = 1, .loglevel = LOGL_DEBUG, + }, +}; + +static const struct log_info log_info = { + .cat = log_categories, + .num_cat = ARRAY_SIZE(log_categories), +}; int main(int argc, char **argv) { diff --git a/src/utils/bs11_config.c b/src/utils/bs11_config.c index c72a23a53..2122abe6a 100644 --- a/src/utils/bs11_config.c +++ b/src/utils/bs11_config.c @@ -884,6 +884,20 @@ struct e1inp_line_ops bs11cfg_e1inp_line_ops = { .sign_link = bs11cfg_sign_link, }; +static const struct log_info_cat bs11_categories[] = { + [DNM] = { + .name = "DNM", + .description = "A-bis Network Management / O&M (NM/OML)", + .color = "\033[1;36m", + .enabled = 1, .loglevel = LOGL_INFO, + }, +}; + +const struct log_info log_info = { + .cat = bs11_categories, + .num_cat = ARRAY_SIZE(bs11_categories), +}; + extern int bts_model_bs11_init(void); int main(int argc, char **argv) { |