use new osmo_mobile_identity API everywhere

Depends: Ic3f969e739654c1e8c387aedeeba5cce07fe2307 (libosmocore)
Change-Id: Idfc8e576e10756aeaacf5569f6178068313eb7ea
diff --git a/include/osmocom/msc/gsm_04_08.h b/include/osmocom/msc/gsm_04_08.h
index 661da42..bfc8027 100644
--- a/include/osmocom/msc/gsm_04_08.h
+++ b/include/osmocom/msc/gsm_04_08.h
@@ -54,8 +54,6 @@
 		      int h_len);
 
 int send_siemens_mrpci(struct gsm_lchan *lchan, uint8_t *classmark2_lv);
-int gsm48_extract_mi(uint8_t *classmark2, int length, char *mi_string, uint8_t *mi_type);
-int gsm48_paging_extract_mi(struct gsm48_pag_resp *pag, int length, char *mi_string, uint8_t *mi_type);
 
 int gsm48_lchan_modify(struct gsm_lchan *lchan, uint8_t lchan_mode);
 int gsm48_rx_rr_modif_ack(struct msgb *msg);
diff --git a/include/osmocom/msc/msub.h b/include/osmocom/msc/msub.h
index 2418feb..14f3e76 100644
--- a/include/osmocom/msc/msub.h
+++ b/include/osmocom/msc/msub.h
@@ -1,5 +1,7 @@
 #pragma once
 
+#include <osmocom/gsm/gsm48.h>
+
 #include <osmocom/msc/debug.h>
 #include <osmocom/msc/msc_roles.h>
 
@@ -64,7 +66,7 @@
 			const char *file, int line);
 int msub_tx_an_apdu(struct msub *msub, enum msc_role from_role, enum msc_role to_role, struct an_apdu *an_apdu);
 
-void msub_update_id_from_mi(struct msub *msub, const uint8_t mi[], uint8_t mi_len);
+void msub_update_id_from_mi(struct msub *msub, const struct osmo_mobile_identity *mi);
 void msub_update_id(struct msub *msub);
 void msub_update_id_for_vsub(struct vlr_subscr *for_vsub);
 
diff --git a/include/osmocom/msc/vlr.h b/include/osmocom/msc/vlr.h
index 615c6c8..83f83c7 100644
--- a/include/osmocom/msc/vlr.h
+++ b/include/osmocom/msc/vlr.h
@@ -23,6 +23,7 @@
 	LOGP(DVLR, level, "SUBSCR(%s) " fmt, vlr_subscr_name(vsub), ## args)
 
 struct log_target;
+struct osmo_mobile_identity;
 
 #define VLR_SUBSCRIBER_NO_EXPIRATION	0
 #define VLR_SUBSCRIBER_LU_EXPIRATION_INTERVAL	60	/* in seconds */
@@ -302,7 +303,7 @@
 /* tell the VLR that the RAN connection is gone */
 int vlr_subscr_disconnected(struct vlr_subscr *vsub);
 bool vlr_subscr_expire(struct vlr_subscr *vsub);
-int vlr_subscr_rx_id_resp(struct vlr_subscr *vsub, const uint8_t *mi, size_t mi_len);
+int vlr_subscr_rx_id_resp(struct vlr_subscr *vsub, const struct osmo_mobile_identity *mi);
 int vlr_subscr_rx_auth_resp(struct vlr_subscr *vsub, bool is_r99, bool is_utran,
 			    const uint8_t *res, uint8_t res_len);
 int vlr_subscr_rx_auth_fail(struct vlr_subscr *vsub, const uint8_t *auts);
@@ -440,7 +441,7 @@
 		 void *parent_event_data,
 		 struct vlr_instance *vlr, void *msc_conn_ref,
 		 enum vlr_parq_type type, enum osmo_cm_service_type cm_service_type,
-		 const uint8_t *mi_lv,
+		 const struct osmo_mobile_identity *mi,
 		 const struct osmo_location_area_id *lai,
 		 bool authentication_required,
 		 bool ciphering_required,