Harald Welte | 52b1f98 | 2008-12-23 20:25:15 +0000 | [diff] [blame] | 1 | #ifndef _DEBUG_H |
| 2 | #define _DEBUG_H |
| 3 | |
Holger Hans Peter Freyther | b61e3b2 | 2009-12-22 22:32:51 +0100 | [diff] [blame] | 4 | #include <stdio.h> |
Pablo Neira Ayuso | 136f453 | 2011-03-22 16:47:59 +0100 | [diff] [blame] | 5 | #include <osmocom/core/linuxlist.h> |
Holger Hans Peter Freyther | b61e3b2 | 2009-12-22 22:32:51 +0100 | [diff] [blame] | 6 | |
Harald Welte | 3633a6d | 2008-12-26 00:06:02 +0000 | [diff] [blame] | 7 | #define DEBUG |
Pablo Neira Ayuso | 136f453 | 2011-03-22 16:47:59 +0100 | [diff] [blame] | 8 | #include <osmocom/core/logging.h> |
Harald Welte | 3633a6d | 2008-12-26 00:06:02 +0000 | [diff] [blame] | 9 | |
Holger Hans Peter Freyther | b61e3b2 | 2009-12-22 22:32:51 +0100 | [diff] [blame] | 10 | /* Debug Areas of the code */ |
| 11 | enum { |
| 12 | DRLL, |
| 13 | DCC, |
| 14 | DMM, |
| 15 | DRR, |
| 16 | DRSL, |
| 17 | DNM, |
| 18 | DMNCC, |
Holger Hans Peter Freyther | b61e3b2 | 2009-12-22 22:32:51 +0100 | [diff] [blame] | 19 | DPAG, |
| 20 | DMEAS, |
Holger Hans Peter Freyther | b61e3b2 | 2009-12-22 22:32:51 +0100 | [diff] [blame] | 21 | DSCCP, |
| 22 | DMSC, |
| 23 | DMGCP, |
| 24 | DHO, |
Harald Welte | ae1f159 | 2009-12-24 11:39:14 +0100 | [diff] [blame] | 25 | DDB, |
Harald Welte | d0c1914 | 2009-12-24 11:46:44 +0100 | [diff] [blame] | 26 | DREF, |
Harald Welte | 9b455bf | 2010-03-14 15:45:01 +0800 | [diff] [blame] | 27 | DGPRS, |
Harald Welte | 6b72cdf | 2010-05-11 05:54:22 +0200 | [diff] [blame] | 28 | DNS, |
| 29 | DBSSGP, |
Harald Welte | b2e4918 | 2010-05-13 19:47:01 +0200 | [diff] [blame] | 30 | DLLC, |
| 31 | DSNDCP, |
Philipp | 2c7f837 | 2016-08-26 16:58:41 +0200 | [diff] [blame] | 32 | DSLHC, |
Holger Hans Peter Freyther | 3d73e0d | 2010-06-15 19:27:25 +0800 | [diff] [blame] | 33 | DNAT, |
Daniel Willmann | 1c33d4c | 2011-07-19 12:14:34 +0200 | [diff] [blame] | 34 | DCTRL, |
Harald Welte | f1033cc | 2012-11-08 16:14:37 +0100 | [diff] [blame] | 35 | DSMPP, |
Holger Hans Peter Freyther | 06a88fa | 2015-04-05 19:34:12 +0200 | [diff] [blame] | 36 | DFILTER, |
Neels Hofmeyr | c8a614d | 2015-09-24 17:32:30 +0200 | [diff] [blame] | 37 | DGTPHUB, |
Daniel Willmann | 35a65ed | 2016-05-20 21:59:45 +0200 | [diff] [blame] | 38 | DRANAP, |
Daniel Willmann | 3adb23c | 2016-05-20 21:59:35 +0200 | [diff] [blame] | 39 | DSUA, |
Philipp | d8b4577 | 2016-09-02 13:32:38 +0200 | [diff] [blame] | 40 | DV42BIS, |
Holger Hans Peter Freyther | b61e3b2 | 2009-12-22 22:32:51 +0100 | [diff] [blame] | 41 | Debug_LastEntry, |
| 42 | }; |
Harald Welte | 8d77b95 | 2009-12-17 00:31:10 +0100 | [diff] [blame] | 43 | |
Holger Hans Peter Freyther | b61e3b2 | 2009-12-22 22:32:51 +0100 | [diff] [blame] | 44 | /* context */ |
| 45 | #define BSC_CTX_LCHAN 0 |
| 46 | #define BSC_CTX_SUBSCR 1 |
| 47 | #define BSC_CTX_BTS 2 |
| 48 | #define BSC_CTX_SCCP 3 |
Harald Welte | 8be8c8f | 2010-05-15 23:52:02 +0200 | [diff] [blame] | 49 | |
Holger Hans Peter Freyther | b61e3b2 | 2009-12-22 22:32:51 +0100 | [diff] [blame] | 50 | /* target */ |
| 51 | |
| 52 | enum { |
Harald Welte | dc5062b | 2010-03-26 21:28:59 +0800 | [diff] [blame] | 53 | //DEBUG_FILTER_ALL = 1 << 0, |
| 54 | LOG_FILTER_IMSI = 1 << 1, |
Harald Welte | 8be8c8f | 2010-05-15 23:52:02 +0200 | [diff] [blame] | 55 | LOG_FILTER_NSVC = 1 << 2, |
Harald Welte | d9a55f6 | 2010-05-17 23:41:43 +0200 | [diff] [blame] | 56 | LOG_FILTER_BVC = 1 << 3, |
Holger Hans Peter Freyther | b61e3b2 | 2009-12-22 22:32:51 +0100 | [diff] [blame] | 57 | }; |
| 58 | |
Harald Welte | 8be8c8f | 2010-05-15 23:52:02 +0200 | [diff] [blame] | 59 | /* we don't need a header dependency for this... */ |
| 60 | struct gprs_nsvc; |
Harald Welte | d9a55f6 | 2010-05-17 23:41:43 +0200 | [diff] [blame] | 61 | struct bssgp_bvc_ctx; |
Holger Hans Peter Freyther | 6995f24 | 2014-12-28 18:54:32 +0100 | [diff] [blame] | 62 | struct gsm_subscriber; |
Harald Welte | 8be8c8f | 2010-05-15 23:52:02 +0200 | [diff] [blame] | 63 | |
Holger Hans Peter Freyther | 6995f24 | 2014-12-28 18:54:32 +0100 | [diff] [blame] | 64 | void log_set_imsi_filter(struct log_target *target, struct gsm_subscriber *subscr); |
Harald Welte | 8be8c8f | 2010-05-15 23:52:02 +0200 | [diff] [blame] | 65 | void log_set_nsvc_filter(struct log_target *target, |
Holger Hans Peter Freyther | d92f9af | 2010-05-23 20:59:55 +0800 | [diff] [blame] | 66 | struct gprs_nsvc *nsvc); |
Harald Welte | d9a55f6 | 2010-05-17 23:41:43 +0200 | [diff] [blame] | 67 | void log_set_bvc_filter(struct log_target *target, |
Holger Hans Peter Freyther | d92f9af | 2010-05-23 20:59:55 +0800 | [diff] [blame] | 68 | struct bssgp_bvc_ctx *bctx); |
Holger Hans Peter Freyther | b61e3b2 | 2009-12-22 22:32:51 +0100 | [diff] [blame] | 69 | |
Harald Welte | dc5062b | 2010-03-26 21:28:59 +0800 | [diff] [blame] | 70 | extern const struct log_info log_info; |
Holger Hans Peter Freyther | b61e3b2 | 2009-12-22 22:32:51 +0100 | [diff] [blame] | 71 | |
Harald Welte | 52b1f98 | 2008-12-23 20:25:15 +0000 | [diff] [blame] | 72 | #endif /* _DEBUG_H */ |