From 528025e9a6390fafcb78f5493528bd5a6356f973 Mon Sep 17 00:00:00 2001 From: Robert Schmidt <robert.schmidt@openairinterface.org> Date: Mon, 13 Mar 2023 14:24:08 +0100 Subject: [PATCH] Fix decoding of Mobile identity --- openair3/NAS/COMMON/IES/FGSMobileIdentity.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/openair3/NAS/COMMON/IES/FGSMobileIdentity.c b/openair3/NAS/COMMON/IES/FGSMobileIdentity.c index 3bdddc3619e..872fc8e53c9 100644 --- a/openair3/NAS/COMMON/IES/FGSMobileIdentity.c +++ b/openair3/NAS/COMMON/IES/FGSMobileIdentity.c @@ -54,8 +54,8 @@ int decode_5gs_mobile_identity(FGSMobileIdentity *fgsmobileidentity, uint8_t iei decoded++; } - ielen = *(buffer + decoded); - decoded++; + ielen = *(uint16_t*)(buffer + decoded); /* length is two bytes */ + decoded += 2; CHECK_LENGTH_DECODER(len - decoded, ielen); uint8_t typeofidentity = *(buffer + decoded) & 0x7; @@ -63,6 +63,8 @@ int decode_5gs_mobile_identity(FGSMobileIdentity *fgsmobileidentity, uint8_t iei if (typeofidentity == FGS_MOBILE_IDENTITY_5G_GUTI) { decoded_rc = decode_guti_5gs_mobile_identity(&fgsmobileidentity->guti, buffer + decoded); + } else { + AssertFatal(false, "Mobile Identity encoding of type %d not implemented\n", typeofidentity); } if (decoded_rc < 0) { -- GitLab