aboutsummaryrefslogtreecommitdiffstats
path: root/src/libvlr/vlr.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libvlr/vlr.c')
-rw-r--r--src/libvlr/vlr.c26
1 files changed, 4 insertions, 22 deletions
diff --git a/src/libvlr/vlr.c b/src/libvlr/vlr.c
index 21ef0821f..6750a46f6 100644
--- a/src/libvlr/vlr.c
+++ b/src/libvlr/vlr.c
@@ -1105,33 +1105,15 @@ void vlr_subscr_rx_ciph_res(struct vlr_subscr *vsub, struct vlr_ciph_result *res
int vlr_set_ciph_mode(struct vlr_instance *vlr,
struct osmo_fsm_inst *fi,
void *msc_conn_ref,
- enum vlr_ciph ciph_mode,
+ bool ciph_required,
bool umts_aka,
bool retrieve_imeisv)
{
- switch (ciph_mode) {
- case VLR_CIPH_NONE:
+ if (!ciph_required)
return 0;
- case VLR_CIPH_A5_1:
- case VLR_CIPH_A5_3:
- LOGPFSML(fi, LOGL_DEBUG, "Set Ciphering Mode: %d=%s\n",
- ciph_mode, vlr_ciph_name(ciph_mode));
- return vlr->ops.set_ciph_mode(msc_conn_ref,
- ciph_mode,
- umts_aka,
- retrieve_imeisv);
-
- case VLR_CIPH_A5_2:
- /* TODO policy by user config? */
- LOGPFSML(fi, LOGL_ERROR, "A5/2 ciphering is not allowed\n");
- return -EINVAL;
-
- default:
- LOGPFSML(fi, LOGL_ERROR, "unknown ciphering value: %d\n",
- ciph_mode);
- return -EINVAL;
- }
+ LOGPFSML(fi, LOGL_DEBUG, "Set Ciphering Mode\n");
+ return vlr->ops.set_ciph_mode(msc_conn_ref, umts_aka, retrieve_imeisv);
}
/* Decide whether UMTS AKA should be used.