Save imsi to mme_ue context

This commit is contained in:
James Park 2017-07-21 10:17:51 -07:00
parent 57d94969bf
commit bea13d81c0
3 changed files with 17 additions and 0 deletions

View File

@ -636,6 +636,10 @@ mme_ue_t *emm_find_ue_by_message(enb_ue_t *enb_ue, nas_message_t *message)
if (!mme_ue)
{
mme_ue = mme_ue_add(enb_ue);
strncpy(mme_ue->imsi_bcd, imsi_bcd,
sizeof(mme_ue->imsi_bcd));
mme_ue_set_imsi(mme_ue, imsi, imsi_len);
}
break;

View File

@ -516,6 +516,17 @@ mme_ue_t *mme_ue_this(hash_index_t *hi)
return hash_this_val(hi);
}
status_t mme_ue_set_imsi(mme_ue_t *mme_ue, c_uint8_t *imsi, int imsi_len)
{
d_assert(mme_ue && imsi, return CORE_ERROR, "Invalid Param");
memcpy(mme_ue->imsi, imsi, imsi_len);
mme_ue->imsi_len = imsi_len;
hash_set(self.imsi_ue_hash, imsi, imsi_len, mme_ue);
return CORE_OK;
}
#if 0
unsigned int mme_ue_count()
{

View File

@ -280,6 +280,8 @@ CORE_DECLARE(mme_ue_t*) mme_ue_first_in_enb(mme_enb_t *enb);
CORE_DECLARE(mme_ue_t*) mme_ue_next_in_enb(mme_ue_t *mme_ue);
CORE_DECLARE(mme_ue_t*) mme_ue_find_by_imsi(c_uint8_t *imsi, int imsi_len);
CORE_DECLARE(mme_ue_t*) mme_ue_find_by_guti(guti_t *guti);
CORE_DECLARE(status_t) mme_ue_set_imsi(mme_ue_t *mme_ue, c_uint8_t *imsi,
int imsi_len);
CORE_DECLARE(mme_bearer_t*) mme_sess_add(mme_ue_t *mme_ue, c_uint8_t pti);
CORE_DECLARE(status_t ) mme_sess_remove(mme_sess_t *sess);