diff options
author | Harald Welte <laforge@osmocom.org> | 2020-10-04 21:42:38 +0200 |
---|---|---|
committer | laforge <laforge@osmocom.org> | 2020-10-08 07:18:39 +0000 |
commit | bd771a9576cd16b346ba8cbb0478074df4e3307c (patch) | |
tree | 0b584cb9607b1a4ca32abbe8c13d5345bf0dec19 | |
parent | 5b214e2847cb8264e42494e7474f3e3d350aaab7 (diff) |
bssgp: Don't include RA-ID in BVC-RESET for BVCI=0 (signalling)
3GPP TS 48.018 is quite clear: The RA-ID must only be included
when a PTP-BVCI is being reset [and only if the sender is the BSS].
Before this patch, osmo-pcu is including the RA-ID in BVC-RESET
for BVCI=0.
Change-Id: Ie87820537d6d616da4fd4bbf73eab06e28fda5e1
-rw-r--r-- | src/gb/gprs_bssgp_bss.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/gb/gprs_bssgp_bss.c b/src/gb/gprs_bssgp_bss.c index 94b18126..d1734ee5 100644 --- a/src/gb/gprs_bssgp_bss.c +++ b/src/gb/gprs_bssgp_bss.c @@ -318,7 +318,16 @@ int bssgp_tx_bvc_reset2(struct bssgp_bvc_ctx *bctx, uint16_t bvci, uint8_t cause } int bssgp_tx_bvc_reset(struct bssgp_bvc_ctx *bctx, uint16_t bvci, uint8_t cause) { - return bssgp_tx_bvc_reset2(bctx, bvci, cause, bvci != BVCI_PTM); + /* The Cell Identifier IE is mandatory in the BVC-RESET PDU sent from BSS to SGSN in order to reset a + * BVC corresponding to a PTP functional entity. The Cell Identifier IE shall not be used in any other + * BVC-RESET PDU. */ + switch (bvci) { + case BVCI_SIGNALLING: + case BVCI_PTM: + return bssgp_tx_bvc_reset2(bctx, bvci, cause, false); + default: + return bssgp_tx_bvc_reset2(bctx, bvci, cause, true); + } } /*! Transmit a FLOW_CONTROL-BVC (Chapter 10.4.4) |