neels has uploaded this change for review. (
https://gerrit.osmocom.org/c/osmo-hnbgw/+/37807?usp=email )
Change subject: on RUA Connect failure, respond with RUA Disconnect
......................................................................
on RUA Connect failure, respond with RUA Disconnect
Related: OS#6283
Related: osmo-ttcn3-hacks I2b5c024a395e736538c0c37db40d34f3b8d99991
Change-Id: Iafb30c31a4c5db53ecdda99a0e0b5937b71e362c
---
M src/osmo-hnbgw/hnbgw_rua.c
1 file changed, 12 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-hnbgw refs/changes/07/37807/1
diff --git a/src/osmo-hnbgw/hnbgw_rua.c b/src/osmo-hnbgw/hnbgw_rua.c
index 5576fa4..7b561df 100644
--- a/src/osmo-hnbgw/hnbgw_rua.c
+++ b/src/osmo-hnbgw/hnbgw_rua.c
@@ -270,7 +270,7 @@
LOGHNB(hnb, DRUA, LOGL_ERROR,
"Failed to create context map for %s: rx RUA %s with %u bytes RANAP
data\n",
is_ps ? "IuPS" : "IuCS",
rua_procedure_code_name(rua_procedure), data ? len : 0);
- return -EINVAL;
+ goto tx_disconnect;
}
break;
@@ -308,6 +308,17 @@
/* No caller may ever pass a different RUA procedure code */
OSMO_ASSERT(false);
}
+
+tx_disconnect:
+ /* Send Disconnect to RUA without RANAP data. */
+ rua_cause = (RUA_Cause_t){
+ .present = RUA_Cause_PR_radioNetwork,
+ .choice.radioNetwork = RUA_CauseRadioNetwork_connect_failed,
+ };
+ LOG_HNBP(hnb->persistent, LOGL_INFO, "Tx RUA Disconnect\n");
+ if (rua_tx_disc(hnb, is_ps, context_id, &rua_cause, NULL, 0))
+ LOG_HNBP(hnb->persistent, LOGL_ERROR, "Failed to send Disconnect to
RUA\n");
+ return -EINVAL;
}
static uint32_t rua_to_scu_cause(RUA_Cause_t *in)
--
To view, visit
https://gerrit.osmocom.org/c/osmo-hnbgw/+/37807?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-hnbgw
Gerrit-Branch: master
Gerrit-Change-Id: Iafb30c31a4c5db53ecdda99a0e0b5937b71e362c
Gerrit-Change-Number: 37807
Gerrit-PatchSet: 1
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>