aboutsummaryrefslogtreecommitdiffstats
path: root/include/osmocom/gprs/gprs_msgb.h
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2012-06-17 23:05:26 +0800
committerHarald Welte <laforge@gnumonks.org>2012-06-17 23:05:26 +0800
commit641f7cee5dfe137ecb40c7a461b6235d205fc715 (patch)
treed1de06a3b81c5e62e741054770bfa26a0bda0f82 /include/osmocom/gprs/gprs_msgb.h
parente02b9f404cdf58f829b669f95f6cb7ae8068e417 (diff)
libosmogb: move files to proper location and fix build0.5.0
Diffstat (limited to 'include/osmocom/gprs/gprs_msgb.h')
-rw-r--r--include/osmocom/gprs/gprs_msgb.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/include/osmocom/gprs/gprs_msgb.h b/include/osmocom/gprs/gprs_msgb.h
new file mode 100644
index 00000000..f4c85547
--- /dev/null
+++ b/include/osmocom/gprs/gprs_msgb.h
@@ -0,0 +1,37 @@
+#ifndef _LIBGB_MSGB_H
+#define _LIBGB_MSGB_H
+
+#include <stdint.h>
+/* the data structure stored in msgb->cb for libgb apps */
+struct libgb_msgb_cb {
+ unsigned char *bssgph;
+ unsigned char *llch;
+
+ /* Cell Identifier */
+ unsigned char *bssgp_cell_id;
+
+ /* Identifiers of a BTS, equal to 'struct bssgp_bts_ctx' */
+ uint16_t nsei;
+ uint16_t bvci;
+
+ /* Identifier of a MS (inside BTS), equal to 'struct sgsn_mm_ctx' */
+ uint32_t tlli;
+} __attribute__((packed));
+#define LIBGB_MSGB_CB(__msgb) ((struct libgb_msgb_cb *)&((__msgb)->cb[0]))
+#define msgb_tlli(__x) LIBGB_MSGB_CB(__x)->tlli
+#define msgb_nsei(__x) LIBGB_MSGB_CB(__x)->nsei
+#define msgb_bvci(__x) LIBGB_MSGB_CB(__x)->bvci
+#define msgb_gmmh(__x) (__x)->l3h
+#define msgb_bssgph(__x) LIBGB_MSGB_CB(__x)->bssgph
+#define msgb_bssgp_len(__x) ((__x)->tail - (uint8_t *)msgb_bssgph(__x))
+#define msgb_bcid(__x) LIBGB_MSGB_CB(__x)->bssgp_cell_id
+#define msgb_llch(__x) LIBGB_MSGB_CB(__x)->llch
+
+/* logging contexts */
+#define GPRS_CTX_NSVC 0
+#define GPRS_CTX_BVC 1
+
+#include <osmocom/core/logging.h>
+int gprs_log_filter_fn(const struct log_context *ctx,
+ struct log_target *tar);
+#endif