diff options
author | Harald Welte <laforge@gnumonks.org> | 2010-05-11 10:01:17 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2010-05-11 10:03:34 +0200 |
commit | 0a4050c63b8ff1b80714aee6d6a133de79366eb9 (patch) | |
tree | 91750623cbc24f136b30618938917691393c2e60 /openbsc/include/openbsc/gprs_bssgp.h | |
parent | c1c1dd260a02d7679f0e1aff28f319defed950eb (diff) |
[gprs] gb_proxy: Send proper BSSGP STATUS msg in error case
In order to reuse the existing bssgp_tx_* functions without pulling
in the dependencies of gprs_bssgp.c, we have to move those functions
to gprs_bssgp_util.c
Furthermore, we can remove gbprox_nsi and replace it with bssgp_nsi,
and we can do proper processing of BVC-RESET messages coming from
the SGSN on the signalling BVC. In that case we need to send RESET
messages to all the BSS.
Diffstat (limited to 'openbsc/include/openbsc/gprs_bssgp.h')
-rw-r--r-- | openbsc/include/openbsc/gprs_bssgp.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/openbsc/include/openbsc/gprs_bssgp.h b/openbsc/include/openbsc/gprs_bssgp.h index c1094b351..d3ccb12ee 100644 --- a/openbsc/include/openbsc/gprs_bssgp.h +++ b/openbsc/include/openbsc/gprs_bssgp.h @@ -137,6 +137,18 @@ enum gprs_bssgp_cause { /* Our implementation */ +/* gprs_bssgp_util.c */ +extern struct gprs_ns_inst *bssgp_nsi; +struct msgb *bssgp_msgb_alloc(void); +const char *bssgp_cause_str(enum gprs_bssgp_cause cause); +/* Transmit a simple response such as BLOCK/UNBLOCK/RESET ACK/NACK */ +int bssgp_tx_simple_bvci(uint8_t pdu_type, uint16_t nsei, + uint16_t bvci, uint16_t ns_bvci); +/* Chapter 10.4.14: Status */ +int bssgp_tx_status(uint8_t cause, uint16_t *bvci, struct msgb *orig_msg); + +/* gprs_bssgp.c */ + #include <osmocore/tlv.h> extern int gprs_bssgp_rcvmsg(struct msgb *msg); |