gsup: send RAT type on LU
At 36c3, osmo-hlr was run with a patch that records the RAN type of attached
subscribers. Even though this is not in osmo-hlr master, it is nice information
to send along.
Change-Id: I5dbe610738aed7ea1edf6b33543b1c03818cc274
diff --git a/src/sgsn/gprs_subscriber.c b/src/sgsn/gprs_subscriber.c
index 484c7ef..c23b332 100644
--- a/src/sgsn/gprs_subscriber.c
+++ b/src/sgsn/gprs_subscriber.c
@@ -812,7 +812,7 @@
return gprs_subscr_tx_gsup_message(subscr, &gsup_msg);
}
-int gprs_subscr_location_update(struct gprs_subscr *subscr)
+int gprs_subscr_location_update(struct gprs_subscr *subscr, enum sgsn_ran_type ran_type)
{
struct osmo_gsup_message gsup_msg = {0};
@@ -820,6 +820,18 @@
"subscriber data is not available\n");
gsup_msg.message_type = OSMO_GSUP_MSGT_UPDATE_LOCATION_REQUEST;
+
+ switch (ran_type) {
+ case MM_CTX_T_GERAN_Gb:
+ gsup_msg.current_rat_type = OSMO_RAT_GERAN_A;
+ break;
+ case MM_CTX_T_UTRAN_Iu:
+ gsup_msg.current_rat_type = OSMO_RAT_UTRAN_IU;
+ break;
+ default:
+ break;
+ }
+
return gprs_subscr_tx_gsup_message(subscr, &gsup_msg);
}
@@ -884,7 +896,7 @@
subscr->flags |= GPRS_SUBSCRIBER_UPDATE_LOCATION_PENDING;
- rc = gprs_subscr_location_update(subscr);
+ rc = gprs_subscr_location_update(subscr, mmctx->ran_type);
gprs_subscr_put(subscr);
return rc;
}