#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

#endif
