diff options
author | Ivan Kluchnikov <kluchnikovi@gmail.com> | 2016-12-15 13:02:10 +0300 |
---|---|---|
committer | Ivan Kluchnikov <kluchnikovi@gmail.com> | 2017-02-07 18:59:56 +0300 |
commit | 362a757f5604213abde8e6ce75875dde8428e632 (patch) | |
tree | 236c8ee6fc87edb000aae204f56b9ebb9f55038f /openbsc/src/libmsc/gsm_04_08.c | |
parent | 444a9b93045dd29a3521005cfa862170930e04c9 (diff) |
osmo-nitb: Send purge ms to reg-proxy and handle response
Diffstat (limited to 'openbsc/src/libmsc/gsm_04_08.c')
-rw-r--r-- | openbsc/src/libmsc/gsm_04_08.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/openbsc/src/libmsc/gsm_04_08.c b/openbsc/src/libmsc/gsm_04_08.c index 79a094c29..a6baf4eea 100644 --- a/openbsc/src/libmsc/gsm_04_08.c +++ b/openbsc/src/libmsc/gsm_04_08.c @@ -1081,6 +1081,12 @@ static int gsm48_rx_mm_serv_req(struct gsm_subscriber_connection *conn, struct m _gsm48_rx_mm_serv_req_sec_cb, NULL); } +void gsm0408_purge_ms(struct gsm_subscriber *subscr) { + if (subscr->group->net->auth_policy == GSM_AUTH_POLICY_REMOTE) { + subscr_purge_ms(subscr); + } +} + static int gsm48_rx_mm_imsi_detach_ind(struct gsm_subscriber_connection *conn, struct msgb *msg) { struct gsm_network *network = conn->network; @@ -1119,6 +1125,7 @@ static int gsm48_rx_mm_imsi_detach_ind(struct gsm_subscriber_connection *conn, s } if (subscr) { + gsm0408_purge_ms(subscr); subscr_update(subscr, conn->bts, GSM_SUBSCRIBER_UPDATE_DETACHED); DEBUGP(DMM, "Subscriber: %s\n", subscr_name(subscr)); |