aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2018-04-06 01:07:42 +0200
committerHarald Welte <laforge@gnumonks.org>2018-04-11 21:39:44 +0000
commit2a5cd93d8fe22441e9988fb10e9df2cf44a97447 (patch)
tree2ef6db20562d49fd060037224176529a3aa163f5
parent4068ab278b66af7010c3acc73a7bb87bf651fc46 (diff)
fix BSC Clear Request
On receiving a Clear Request, don't send a Clear Command "out of band", let the FSM do the release handling by invoking msc_subscr_conn_mo_close(). Fixes: ttcn3 MSC_Tests.TC_lu_clear_request Change-Id: I168b889ac7989641cc679b781dcffb87ff13a710
-rw-r--r--src/libmsc/a_iface_bssap.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/src/libmsc/a_iface_bssap.c b/src/libmsc/a_iface_bssap.c
index 87ccf0532..6d5848aa1 100644
--- a/src/libmsc/a_iface_bssap.c
+++ b/src/libmsc/a_iface_bssap.c
@@ -216,8 +216,6 @@ void a_sccp_rx_udt(struct osmo_sccp_user *scu, const struct a_conn_info *a_conn_
static int bssmap_rx_clear_rqst(struct gsm_subscriber_connection *conn,
struct msgb *msg, struct tlv_parsed *tp)
{
- int rc;
- struct msgb *msg_resp;
uint8_t cause;
LOGPCONN(conn, LOGL_INFO, "Rx BSSMAP CLEAR REQUEST\n");
@@ -228,13 +226,9 @@ static int bssmap_rx_clear_rqst(struct gsm_subscriber_connection *conn,
}
cause = TLVP_VAL(tp, GSM0808_IE_CAUSE)[0];
- /* Respond with clear command */
- msg_resp = gsm0808_create_clear_command(GSM0808_CAUSE_CALL_CONTROL);
- rc = osmo_sccp_tx_data_msg(conn->a.scu, conn->a.conn_id, msg_resp);
-
- msc_clear_request(conn, cause);
+ msc_subscr_conn_mo_close(conn, cause);
- return rc;
+ return 0;
}
/* Endpoint to handle BSSMAP clear complete */