From d3d70215afe33332fe50750d55354ce817baf3a8 Mon Sep 17 00:00:00 2001
From: winckel <winckel@eurecom.fr>
Date: Wed, 8 Jan 2014 13:36:53 +0000
Subject: [PATCH] Added a warning on the number of ue_CapabilityRAT item to
 transmit.

git-svn-id: http://svn.eurecom.fr/openair4G/trunk@4829 818b1a75-f10b-46b9-bf7c-635c3b92a50f
---
 openair2/RRC/LITE/rrc_eNB_S1AP.c | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/openair2/RRC/LITE/rrc_eNB_S1AP.c b/openair2/RRC/LITE/rrc_eNB_S1AP.c
index 54202b0f913..e701fb89fcd 100644
--- a/openair2/RRC/LITE/rrc_eNB_S1AP.c
+++ b/openair2/RRC/LITE/rrc_eNB_S1AP.c
@@ -361,15 +361,20 @@ void rrc_eNB_send_S1AP_UE_CAPABILITIES_IND(uint8_t mod_id, uint8_t ue_index, UL_
       && (ueCapabilityInformation->criticalExtensions.choice.c1.present
           == UECapabilityInformation__criticalExtensions__c1_PR_ueCapabilityInformation_r8)
       && (ueCapabilityInformation->criticalExtensions.choice.c1.choice.ueCapabilityInformation_r8.ue_CapabilityRAT_ContainerList.list.count > 0)) {
+        UE_CapabilityRAT_ContainerList_t *ue_CapabilityRAT_ContainerList = &ueCapabilityInformation->criticalExtensions.choice.c1.choice.ueCapabilityInformation_r8.ue_CapabilityRAT_ContainerList;
         MessageDef *msg_p;
+
         msg_p = itti_alloc_new_message (TASK_RRC_ENB, S1AP_UE_CAPABILITIES_IND);
         S1AP_UE_CAPABILITIES_IND (msg_p).eNB_ue_s1ap_id = eNB_rrc_inst[mod_id].Info.UE[ue_index].eNB_ue_s1ap_id;
-        S1AP_UE_CAPABILITIES_IND (msg_p).ue_radio_cap.length =
-                ueCapabilityInformation->criticalExtensions.choice.c1.choice.ueCapabilityInformation_r8.ue_CapabilityRAT_ContainerList.list.array[0]->ueCapabilityRAT_Container.size;
-        S1AP_UE_CAPABILITIES_IND (msg_p).ue_radio_cap.buffer =
-                ueCapabilityInformation->criticalExtensions.choice.c1.choice.ueCapabilityInformation_r8.ue_CapabilityRAT_ContainerList.list.array[0]->ueCapabilityRAT_Container.buf;
+        S1AP_UE_CAPABILITIES_IND (msg_p).ue_radio_cap.length = ue_CapabilityRAT_ContainerList->list.array[0]->ueCapabilityRAT_Container.size;
+        S1AP_UE_CAPABILITIES_IND (msg_p).ue_radio_cap.buffer = ue_CapabilityRAT_ContainerList->list.array[0]->ueCapabilityRAT_Container.buf;
 
         itti_send_msg_to_task (TASK_S1AP, mod_id, msg_p);
+
+        if (ue_CapabilityRAT_ContainerList->list.count > 1) {
+          LOG_W (RRC,"[eNB %d][UE %d] can only handle 1 UE capability RAT item for now (%d)\n", mod_id, ue_index,
+                 ue_CapabilityRAT_ContainerList->list.count);
+        }
   }
 }
 
-- 
GitLab