forked from acouzens/open5gs
[MME] SGaAP-MO-CSFB-INDICATION w/ TAI/ECGI (#2664)
Added TAI/ECGI to the SGaAP-MO-CSFB-INDICATION message.
This commit is contained in:
parent
cb114eca5e
commit
53fe8f1e6d
|
@ -199,6 +199,9 @@ ogs_pkbuf_t *sgsap_build_mo_csfb_indication(mme_ue_t *mme_ue)
|
||||||
ogs_tlv_t *root = NULL;
|
ogs_tlv_t *root = NULL;
|
||||||
ogs_pkbuf_t *pkbuf = NULL;
|
ogs_pkbuf_t *pkbuf = NULL;
|
||||||
|
|
||||||
|
ogs_gtp2_uli_tai_t tai;
|
||||||
|
ogs_gtp2_uli_e_cgi_t e_cgi;
|
||||||
|
|
||||||
ogs_assert(mme_ue);
|
ogs_assert(mme_ue);
|
||||||
csmap = mme_ue->csmap;
|
csmap = mme_ue->csmap;
|
||||||
ogs_assert(csmap);
|
ogs_assert(csmap);
|
||||||
|
@ -208,6 +211,20 @@ ogs_pkbuf_t *sgsap_build_mo_csfb_indication(mme_ue_t *mme_ue)
|
||||||
root = ogs_tlv_add(NULL, OGS_TLV_MODE_T1_L1, SGSAP_IE_IMSI_TYPE,
|
root = ogs_tlv_add(NULL, OGS_TLV_MODE_T1_L1, SGSAP_IE_IMSI_TYPE,
|
||||||
SGSAP_IE_IMSI_LEN, 0, &mme_ue->nas_mobile_identity_imsi);
|
SGSAP_IE_IMSI_LEN, 0, &mme_ue->nas_mobile_identity_imsi);
|
||||||
|
|
||||||
|
memset(&tai, 0, sizeof(tai));
|
||||||
|
ogs_nas_from_plmn_id(&tai.nas_plmn_id, &mme_ue->tai.plmn_id);
|
||||||
|
tai.tac = htobe16(mme_ue->tai.tac);
|
||||||
|
|
||||||
|
ogs_tlv_add(root, OGS_TLV_MODE_T1_L1,
|
||||||
|
SGSAP_IE_TAI_TYPE, SGSAP_IE_TAI_LEN, 0, &tai);
|
||||||
|
|
||||||
|
memset(&e_cgi, 0, sizeof(e_cgi));
|
||||||
|
ogs_nas_from_plmn_id(&e_cgi.nas_plmn_id, &mme_ue->e_cgi.plmn_id);
|
||||||
|
e_cgi.cell_id = htobe32(mme_ue->e_cgi.cell_id);
|
||||||
|
|
||||||
|
ogs_tlv_add(root, OGS_TLV_MODE_T1_L1,
|
||||||
|
SGSAP_IE_E_CGI_TYPE, SGSAP_IE_E_CGI_LEN, 0, &e_cgi);
|
||||||
|
|
||||||
pkbuf = ogs_pkbuf_alloc(NULL, OGS_MAX_SDU_LEN);
|
pkbuf = ogs_pkbuf_alloc(NULL, OGS_MAX_SDU_LEN);
|
||||||
if (!pkbuf) {
|
if (!pkbuf) {
|
||||||
ogs_error("ogs_pkbuf_alloc() failed");
|
ogs_error("ogs_pkbuf_alloc() failed");
|
||||||
|
|
|
@ -69,9 +69,9 @@ extern "C" {
|
||||||
#define SGSAP_IE_SERVICE_INDICATOR_TYPE 32
|
#define SGSAP_IE_SERVICE_INDICATOR_TYPE 32
|
||||||
#define SGSAP_IE_SERVICE_INDICATOR_LEN 1
|
#define SGSAP_IE_SERVICE_INDICATOR_LEN 1
|
||||||
#define SGSAP_IE_TAI_TYPE 35
|
#define SGSAP_IE_TAI_TYPE 35
|
||||||
#define SGSAP_IE_TAI_LEN 7
|
#define SGSAP_IE_TAI_LEN 5
|
||||||
#define SGSAP_IE_E_CGI_TYPE 36
|
#define SGSAP_IE_E_CGI_TYPE 36
|
||||||
#define SGSAP_IE_E_CGI_LEN 9
|
#define SGSAP_IE_E_CGI_LEN 7
|
||||||
#define SGSAP_IE_UE_EMM_MODE_TYPE 37
|
#define SGSAP_IE_UE_EMM_MODE_TYPE 37
|
||||||
#define SGSAP_IE_UE_EMM_MODE_LEN 1
|
#define SGSAP_IE_UE_EMM_MODE_LEN 1
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue