libosmogb
0.12.0.47-7c74
Osmocom Gb library
|
GPRS BSSGP protocol implementation as per 3GPP TS 08.18. More...
#include <errno.h>
#include <stdint.h>
#include <osmocom/core/msgb.h>
#include <osmocom/core/byteswap.h>
#include <osmocom/gsm/tlv.h>
#include <osmocom/core/talloc.h>
#include <osmocom/gprs/gprs_bssgp.h>
#include <osmocom/gprs/gprs_ns.h>
#include "common_vty.h"
Functions | |
const char * | bssgp_cause_str (enum gprs_bssgp_cause cause) |
const char * | bssgp_pdu_str (enum bssgp_pdu_type pdu) |
struct msgb * | bssgp_msgb_alloc (void) |
struct msgb * | bssgp_msgb_copy (const struct msgb *msg, const char *name) |
int | bssgp_tx_simple_bvci (uint8_t pdu_type, uint16_t nsei, uint16_t bvci, uint16_t ns_bvci) |
int | bssgp_tx_status (uint8_t cause, uint16_t *bvci, struct msgb *orig_msg) |
Variables | |
struct gprs_ns_inst * | bssgp_nsi |
static const struct value_string | bssgp_cause_strings [] |
static const struct value_string | bssgp_pdu_strings [] |
GPRS BSSGP protocol implementation as per 3GPP TS 08.18.
const char* bssgp_cause_str | ( | enum gprs_bssgp_cause | cause | ) |
References get_value_string().
Referenced by bssgp_rx_bvc_reset(), bssgp_rx_status(), bssgp_tx_bvc_block(), bssgp_tx_bvc_ptp_reset(), bssgp_tx_bvc_reset(), bssgp_tx_status(), and common_tx_radio_status2().
struct msgb* bssgp_msgb_alloc | ( | void | ) |
References msgb::data, msgb_alloc_headroom(), msgb_bssgph, and OSMO_ASSERT.
Referenced by bssgp_tx_bvc_block(), bssgp_tx_bvc_reset(), bssgp_tx_bvc_unblock(), bssgp_tx_fc_bvc(), bssgp_tx_fc_bvc_ack(), bssgp_tx_fc_ms(), bssgp_tx_flush_ll_ack(), bssgp_tx_llc_discarded(), bssgp_tx_paging(), bssgp_tx_ra_capa_upd(), bssgp_tx_resume(), bssgp_tx_resume_ack(), bssgp_tx_resume_nack(), bssgp_tx_simple_bvci(), bssgp_tx_status(), bssgp_tx_suspend(), bssgp_tx_suspend_ack(), bssgp_tx_suspend_nack(), and common_tx_radio_status().
const char* bssgp_pdu_str | ( | enum bssgp_pdu_type | pdu | ) |
References get_value_string().
Referenced by bssgp_rcvmsg(), bssgp_rx_ptp(), and bssgp_rx_sign().
int bssgp_tx_simple_bvci | ( | uint8_t | pdu_type, |
uint16_t | nsei, | ||
uint16_t | bvci, | ||
uint16_t | ns_bvci | ||
) |
References BSSGP_IE_BVCI, bssgp_msgb_alloc(), gprs_ns_sendmsg(), msgb_bvci, msgb_nsei, msgb_put(), nsei, osmo_htons, pdu_type, and bssgp_normal_hdr::pdu_type.
Referenced by bssgp_rx_bvc_block(), bssgp_rx_bvc_reset(), and bssgp_rx_bvc_unblock().
int bssgp_tx_status | ( | uint8_t | cause, |
uint16_t * | bvci, | ||
struct msgb * | orig_msg | ||
) |
References BSSGP_CAUSE_BVCI_BLOCKED, bssgp_cause_str(), BSSGP_CAUSE_UNKNOWN_BVCI, BSSGP_IE_BVCI, BSSGP_IE_CAUSE, BSSGP_IE_PDU_IN_ERROR, bssgp_msgb_alloc(), BSSGP_PDUT_STATUS, DBSSGP, gprs_ns_sendmsg(), LOGL_ERROR, LOGL_NOTICE, LOGP, msgb_bssgp_len, msgb_bssgph, msgb_bvci, msgb_nsei, msgb_put(), osmo_htons, and bssgp_normal_hdr::pdu_type.
Referenced by bssgp_rcvmsg(), bssgp_rx_bvc_block(), bssgp_rx_bvc_unblock(), bssgp_rx_fc_bvc(), bssgp_rx_ptp(), bssgp_rx_resume(), bssgp_rx_sign(), bssgp_rx_suspend(), and bssgp_rx_ul_ud().
|
static |
struct gprs_ns_inst* bssgp_nsi |
Referenced by _bssgp_tx_dl_ud(), bssgp_tx_bvc_block(), bssgp_tx_bvc_reset(), bssgp_tx_bvc_unblock(), bssgp_tx_fc_bvc(), bssgp_tx_fc_bvc_ack(), bssgp_tx_fc_ms(), bssgp_tx_flush_ll_ack(), bssgp_tx_llc_discarded(), bssgp_tx_paging(), bssgp_tx_ra_capa_upd(), bssgp_tx_resume(), bssgp_tx_resume_ack(), bssgp_tx_resume_nack(), bssgp_tx_suspend(), bssgp_tx_suspend_ack(), bssgp_tx_suspend_nack(), bssgp_tx_ul_ud(), and common_tx_radio_status2().
|
static |