aboutsummaryrefslogtreecommitdiffstats
path: root/src/osmo-bsc/gsm_08_08.c
diff options
context:
space:
mode:
authorVadim Yanitskiy <vyanitskiy@sysmocom.de>2020-08-26 18:49:08 +0700
committerlaforge <laforge@osmocom.org>2020-08-26 19:05:59 +0000
commit6a26e2cf50aa5f7b302154b6b7e8f39293d50127 (patch)
tree93623f8da95c31fab9007e70f1a5515bbeb9944f /src/osmo-bsc/gsm_08_08.c
parente76de16ff629be2fbb97c1ec08fce45ba823f908 (diff)
bsc_subscr_conn_fsm: use proper cause values in SAPI N REJECT
As 3GPP TS 48.058 clearly states, an RLL RELease INDication is only sent if the datalink is released by the MS. Thre's no cause value giving further diagnostics, but if the MS releases the link, it is clearly not the BSS's fault, and hence "BSS not equipped" is wrong. Change-Id: I38222e60071841abcd06046a472ddb35907164a4 Related: OS#4728
Diffstat (limited to 'src/osmo-bsc/gsm_08_08.c')
-rw-r--r--src/osmo-bsc/gsm_08_08.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/osmo-bsc/gsm_08_08.c b/src/osmo-bsc/gsm_08_08.c
index e5457c449..59032d68e 100644
--- a/src/osmo-bsc/gsm_08_08.c
+++ b/src/osmo-bsc/gsm_08_08.c
@@ -60,7 +60,8 @@ static bool msc_connected(struct gsm_subscriber_connection *conn)
}
/*! BTS->MSC: tell MSC a SAPI was not established. */
-void bsc_sapi_n_reject(struct gsm_subscriber_connection *conn, uint8_t dlci)
+void bsc_sapi_n_reject(struct gsm_subscriber_connection *conn,
+ uint8_t dlci, enum gsm0808_cause cause)
{
int rc;
struct msgb *resp;
@@ -68,8 +69,9 @@ void bsc_sapi_n_reject(struct gsm_subscriber_connection *conn, uint8_t dlci)
if (!msc_connected(conn))
return;
- LOGP(DMSC, LOGL_NOTICE, "Tx MSC SAPI N REJECT DLCI=0x%02x\n", dlci);
- resp = gsm0808_create_sapi_reject(dlci);
+ LOGP(DMSC, LOGL_NOTICE, "Tx MSC SAPI N REJECT (dlci=0x%02x, cause='%s')\n",
+ dlci, gsm0808_cause_name(cause));
+ resp = gsm0808_create_sapi_reject_cause(dlci, cause);
rate_ctr_inc(&conn->sccp.msc->msc_ctrs->ctr[MSC_CTR_BSSMAP_TX_DT1_SAPI_N_REJECT]);
rc = osmo_fsm_inst_dispatch(conn->fi, GSCON_EV_TX_SCCP, resp);
if (rc != 0)