aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorHarald Welte <laforge@osmocom.org>2021-02-06 16:47:39 +0100
committerAlexander Couzens <lynxis@fe80.eu>2021-11-05 01:29:05 +0100
commit274b70f1a8d477908f88c262dc67b065b6b6e4dc (patch)
treeb0a62f95fdd7b9b8ccbc7b043d3bff8552284bcb /src
parentefa6c5b7d688ceea902d3b02ba78b813185d3c40 (diff)
Fix enabling of UMTS UEA encryption
The existing code allowed the user to configure UMTS encryption in the vty, but we never actually passed this information down to RANAP. As a result, the RAN had no chance of ever enabling encryption on the air interface. Change-Id: Ieaaa6b23b7337b7edb902fad8031e195e0c5e9d2 Related: OS#4144
Diffstat (limited to 'src')
-rw-r--r--src/libmsc/msc_a.c3
-rw-r--r--src/libmsc/ran_msg_iu.c2
2 files changed, 4 insertions, 1 deletions
diff --git a/src/libmsc/msc_a.c b/src/libmsc/msc_a.c
index 9b6b60223..fe3af14e4 100644
--- a/src/libmsc/msc_a.c
+++ b/src/libmsc/msc_a.c
@@ -348,6 +348,9 @@ static int msc_a_ran_enc_ciphering(struct msc_a *msc_a, bool umts_aka, bool retr
/* for ran_a.c to store the GERAN key that is actually used */
.chosen_key = &msc_a->geran_encr,
},
+ .utran = {
+ .uea_encryption = net->uea_encryption
+ }
},
};
diff --git a/src/libmsc/ran_msg_iu.c b/src/libmsc/ran_msg_iu.c
index 5d134605e..6120918d9 100644
--- a/src/libmsc/ran_msg_iu.c
+++ b/src/libmsc/ran_msg_iu.c
@@ -369,7 +369,7 @@ static struct msgb *ran_iu_make_security_mode_command(struct osmo_fsm_inst *call
LOG_RAN_IU_ENC(caller_fi, LOGL_DEBUG, "Tx RANAP SECURITY MODE COMMAND to RNC, ik %s\n",
osmo_hexdump_nospc(cm->vec->ik, 16));
- return ranap_new_msg_sec_mod_cmd(cm->vec->ik, NULL, RANAP_KeyStatus_new);
+ return ranap_new_msg_sec_mod_cmd(cm->vec->ik, cm->utran.uea_encryption ? cm->vec->ck : NULL, RANAP_KeyStatus_new);
}