diff options
author | Jacob Erlbeck <jerlbeck@sysmocom.de> | 2014-11-11 14:47:38 +0100 |
---|---|---|
committer | Holger Hans Peter Freyther <holger@moiji-mobile.com> | 2014-12-09 09:48:25 +0100 |
commit | 98647ca0ef59430f3cd7ddb7530d85db7fa2688f (patch) | |
tree | c4676ca922ee92c013d5ee9be406f4624851bed4 /openbsc/src/gprs/sgsn_auth.c | |
parent | be2c8d9358084092281e7d02dc7ae0b7e4c0b4f8 (diff) |
sgsn: Add gsm0408_gprs_access_cancelled
This function is called to delete an established MM context
silently without invoking a detach procedure.
It is called when a subscriber is cancelled by the HLR. This
generally happens, when an MS has moved to another routing area and
has to use another SGSN.
Sponsored-by: On-Waves ehf
Diffstat (limited to 'openbsc/src/gprs/sgsn_auth.c')
-rw-r--r-- | openbsc/src/gprs/sgsn_auth.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/openbsc/src/gprs/sgsn_auth.c b/openbsc/src/gprs/sgsn_auth.c index 071bdab84..1f11948f1 100644 --- a/openbsc/src/gprs/sgsn_auth.c +++ b/openbsc/src/gprs/sgsn_auth.c @@ -184,7 +184,10 @@ void sgsn_auth_update(struct sgsn_mm_ctx *mmctx) gsm0408_gprs_access_granted(mmctx); break; case SGSN_AUTH_REJECTED: - gsm0408_gprs_access_denied(mmctx); + if (subscr && (subscr->flags & GPRS_SUBSCRIBER_CANCELLED) != 0) + gsm0408_gprs_access_cancelled(mmctx); + else + gsm0408_gprs_access_denied(mmctx); break; default: break; |