There are use cases, particularly in private networks, where one may want to restrict usage to specific device types. Such device types are identified by the TAC (type approval code) portion of the IMEI.We would need some kind of EIR functionality to allow modes such as:
- allow-all IMEI except those (prefix-matched) that are black-listed
- can be used to prvent access by known broken devices, or by those reported as stolen
- deny-all IMEI except those (prefix-matched) that are white-listed
- can be used in private networks to constrain the use to certain specific approved UE models.
- check required MSC support
- check required SGSN support
- check required GSUP procedures
- implement EIR functionality as part of OsmoHLR
As discussed in #2542, there is already a CHECK_IMEI procedure in GSUP, and it's implemented in osmo-msc. So for the CS side of things, we should be fine to just add the EIR funcionality to the HLR and have it working.
For the SGSN, it seems the entire procedure is not yet implemented. It would have to be added, and given the relative lack of FSMs in the GMM code, this might need quite a bit of work.