aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2010-12-28 14:57:20 +0100
committerHolger Hans Peter Freyther <zecke@selfish.org>2011-01-06 14:52:52 +0100
commitc29043ea24198079d4b3f00fc6c482c69f3b68c4 (patch)
treec6bd590694b0a65a2eea15a450ec7a28a134fddf
parent701076e9d342cc4c5ab64e125aa473546b8f6035 (diff)
msc: Attempt to fix a bug with 'stuck' SMS due RF failure on auth
If we have a RF failure between the paging response and the auth success we will not inform the subscriber layer of the failed paging and instead just 'drop' the SMS. In case we have not completed the auth and close the channel we will now send an auth failure.
-rw-r--r--openbsc/src/gsm_04_08.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/openbsc/src/gsm_04_08.c b/openbsc/src/gsm_04_08.c
index cf72e5971..94a620934 100644
--- a/openbsc/src/gsm_04_08.c
+++ b/openbsc/src/gsm_04_08.c
@@ -316,6 +316,13 @@ void gsm0408_clear_request(struct gsm_subscriber_connection *conn, uint32_t caus
* operation taking place on the subscriber connection.
*/
release_loc_updating_req(conn);
+
+ /* We might need to cancel the paging response or such. */
+ if (conn->sec_operation && conn->sec_operation->cb) {
+ conn->sec_operation->cb(GSM_HOOK_RR_SECURITY, GSM_SECURITY_AUTH_FAILED,
+ NULL, conn, conn->sec_operation->cb_data);
+ }
+
release_security_operation(conn);
release_anchor(conn);