aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Willmann <dwillmann@sysmocom.de>2021-01-07 14:46:28 +0100
committerlaforge <laforge@osmocom.org>2021-01-07 18:57:57 +0000
commit09bea0152a77c7b9559244b7d421ef33a8f8fd21 (patch)
treede7affa0c992961bbe2d459a2a6114d424128ab1
parent210774f60b87612038b1df8e42ff65add578b34b (diff)
bssgp_bvc_fsm: Handle block request from application correctly
This is no event from an incoming message so rx is NULL, and we can't send a status PDU. Also blocking the signalling BVC is not allowed (unblocking it is already forbidden). Change-Id: I3e384b71d57e939efc1596ac1d92380ed5eb916d Fixes: CID#215716
-rw-r--r--src/gb/bssgp_bvc_fsm.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/gb/bssgp_bvc_fsm.c b/src/gb/bssgp_bvc_fsm.c
index cc634a53..6de0028a 100644
--- a/src/gb/bssgp_bvc_fsm.c
+++ b/src/gb/bssgp_bvc_fsm.c
@@ -456,7 +456,10 @@ static void bssgp_bvc_fsm_unblocked(struct osmo_fsm_inst *fi, uint32_t event, vo
case BSSGP_BVCFSM_E_REQ_BLOCK:
if (bfp->role_sgsn) {
LOGPFSML(fi, LOGL_ERROR, "SGSN may not initiate BVC-BLOCK\n");
- _tx_status(fi, BSSGP_CAUSE_SEM_INCORR_PDU, rx);
+ break;
+ }
+ if (bfp->bvci == 0) {
+ LOGPFSML(fi, LOGL_ERROR, "BVCI 0 cannot be blocked\n");
break;
}
bfp->locally_blocked = true;