Bug #2783
closed
it seems like OsmoMSC is forcing Iu/UMTS to use encryption. why?
Added by laforge over 6 years ago.
Updated over 3 years ago.
Description
While working on
#2460 I noticed that in case of Iu, we always force the encryption algorithm to VLR_CIPH_A5_3 which seems odd (in several ways):
- A5/3 is a GSM cipher and is not UEA (umts encryption algo)
- UMTS requires integrity protection with UIA, but not encryption (UEA)
This possibly needs to be clarified and the code adjusted accordingly
- Category set to IuCS support
looking at gsm_04_08.c I find
lu_fsm = vlr_loc_update(conn->conn_fsm,
[...]
is_utran || conn->network->authentication_required,
is_utran? VLR_CIPH_A5_3
: conn->network->a5_encryption,
);
and I'm a bit puzzled on how this could have come about. It was added as part of the commit "Implement IuCS (large refactoring and addition)" and may have slipped by as an early and/or confused development state. It's obviously wrong. The patch to fix is trivial (just remove the conditional, use conn->network->a5_encryption directly), but it makes sense to build some tests around it as well. Thinking of msc_vlr_test_umts_authen.c to make sure auth without ciph works on UTRAN.
this probably dates back to my early confusion about the topic. I probably just wrote it down from a vague hunch and no-one reviewed it later.
- Assignee changed from 4368 to stsp
- Assignee changed from stsp to neels
neels, is this still an issue with the current msc code base? If yes, feel free to fix or assign to osmith
- Status changed from New to In Progress
should be done in a few hours, so throwing this in now
- Status changed from In Progress to Resolved
- % Done changed from 0 to 100
Also available in: Atom
PDF