diff options
author | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2017-03-04 01:26:14 +0100 |
---|---|---|
committer | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2017-03-09 18:34:17 +0100 |
commit | bde33f1188a326a159eaaf265a3822e61cb4c73a (patch) | |
tree | 91af5aff5fff9ebc5f072bcaed6a16d507205af3 /openbsc/src/libmsc/iucs_ranap.c | |
parent | 97579fb2893fbf316927d31838ba47445ca379ae (diff) |
implement utran security mode with vlr
Change-Id: Ib1e285b54cd7aaa0895e9c51a47720f446a07183
Diffstat (limited to 'openbsc/src/libmsc/iucs_ranap.c')
-rw-r--r-- | openbsc/src/libmsc/iucs_ranap.c | 17 |
1 files changed, 3 insertions, 14 deletions
diff --git a/openbsc/src/libmsc/iucs_ranap.c b/openbsc/src/libmsc/iucs_ranap.c index b16eebc47..7215b6c69 100644 --- a/openbsc/src/libmsc/iucs_ranap.c +++ b/openbsc/src/libmsc/iucs_ranap.c @@ -54,18 +54,10 @@ static int iucs_rx_rab_assign(struct gsm_subscriber_connection *conn, int iucs_rx_sec_mode_compl(struct gsm_subscriber_connection *conn, RANAP_SecurityModeCompleteIEs_t *ies) { - gsm_cbfn *cb; + struct vlr_ciph_result vlr_res = {}; OSMO_ASSERT(conn->via_ran == RAN_UTRAN_IU); - if (!conn->sec_operation) { - LOGP(DIUCS, LOGL_ERROR, - "Received Security Mode Complete message, but no" - " authentication/cipher operation in progress" - " for subscr %s\n", vlr_subscr_name(conn->vsub)); - return -EINVAL; - } - /* TODO evalute ies */ if (conn->iu.integrity_protection) @@ -75,11 +67,8 @@ int iucs_rx_sec_mode_compl(struct gsm_subscriber_connection *conn, conn->iu.integrity_protection = INTEGRITY_PROTECTION_IK; - cb = conn->sec_operation->cb; - if (cb) - cb(GSM_HOOK_RR_SECURITY, GSM_SECURITY_SUCCEEDED, NULL, - conn, conn->sec_operation->cb_data); - release_security_operation(conn); + vlr_res.cause = VLR_CIPH_COMPL; + vlr_subscr_rx_ciph_res(conn->vsub, &vlr_res); return 0; } |