From 2955ae47313391c4733717afc9f2b8f75e1e8a9e Mon Sep 17 00:00:00 2001
From: Cedric Roux <cedric.roux@eurecom.fr>
Date: Thu, 1 Aug 2019 17:02:27 +0200
Subject: [PATCH] bugfix: compile with x2ap release 15.03

---
 openair2/X2AP/x2ap_eNB_generate_messages.c | 13 ++++++++-----
 openair2/X2AP/x2ap_eNB_handler.c           | 12 ++++++++----
 openair3/UTILS/conversions.h               |  2 +-
 3 files changed, 17 insertions(+), 10 deletions(-)

diff --git a/openair2/X2AP/x2ap_eNB_generate_messages.c b/openair2/X2AP/x2ap_eNB_generate_messages.c
index ec3d3f4aa0f..be3002c197f 100644
--- a/openair2/X2AP/x2ap_eNB_generate_messages.c
+++ b/openair2/X2AP/x2ap_eNB_generate_messages.c
@@ -1425,12 +1425,15 @@ int x2ap_gNB_generate_ENDC_x2_setup_response(
                         &servedCellMember->servedNRCellInfo.nrCellID.pLMN_Identity);
           NR_CELL_ID_TO_BIT_STRING(instance_p->eNB_id,
                                      &servedCellMember->servedNRCellInfo.nrCellID.nRcellIdentifier);
-          NR_EXTENDED_TAC_ID_TO_BIT_STRING(instance_p->tac, &servedCellMember->servedNRCellInfo.eXtended_TAC);
+          servedCellMember->servedNRCellInfo.fiveGS_TAC = calloc(1, sizeof(X2AP_FiveGS_TAC_t));
+          if (servedCellMember->servedNRCellInfo.fiveGS_TAC == NULL)
+            exit(1);
+          NR_FIVEGS_TAC_ID_TO_BIT_STRING(instance_p->tac, servedCellMember->servedNRCellInfo.fiveGS_TAC);
 
           X2AP_INFO("TAC: %d -> %02x%02x%02x\n", instance_p->tac,
-        		  	  servedCellMember->servedNRCellInfo.eXtended_TAC.buf[0],
-					  servedCellMember->servedNRCellInfo.eXtended_TAC.buf[1],
-					  servedCellMember->servedNRCellInfo.eXtended_TAC.buf[2]);
+        		  	  servedCellMember->servedNRCellInfo.fiveGS_TAC->buf[0],
+					  servedCellMember->servedNRCellInfo.fiveGS_TAC->buf[1],
+					  servedCellMember->servedNRCellInfo.fiveGS_TAC->buf[2]);
 
           plmn = (X2AP_PLMN_Identity_t *)calloc(1,sizeof(X2AP_PLMN_Identity_t));
           {
@@ -1440,7 +1443,7 @@ int x2ap_gNB_generate_ENDC_x2_setup_response(
 
           if (instance_p->frame_type[i] == TDD) { // Panos: Remember to change that to TDD
         	  servedCellMember->servedNRCellInfo.nrModeInfo.present = X2AP_ServedNRCell_Information__nrModeInfo_PR_tdd;
-        	  servedCellMember->servedNRCellInfo.nrModeInfo.choice.tdd.nR_ARFCN = 0; //instance_p->tdd_nRARFCN[i];
+        	  servedCellMember->servedNRCellInfo.nrModeInfo.choice.tdd.nRFreqInfo.nRARFCN = 0; //instance_p->tdd_nRARFCN[i];
         	  /*Missing addition of Frequency Band List item here, can't find it...  */
         	  switch (instance_p->N_RB_DL[i]) {
         	  case 50:
diff --git a/openair2/X2AP/x2ap_eNB_handler.c b/openair2/X2AP/x2ap_eNB_handler.c
index cb2fee6d2dd..8e702a7e2e3 100644
--- a/openair2/X2AP/x2ap_eNB_handler.c
+++ b/openair2/X2AP/x2ap_eNB_handler.c
@@ -1582,10 +1582,14 @@ x2ap_gNB_handle_ENDC_x2_setup_response(instance_t instance,
 				    	  servedCellMember = (ServedNRcellsENDCX2ManagementList__Member *)ie_GNB_ENDC->value.choice.ServedNRcellsENDCX2ManagementList.list.array[i];
 				    	  x2ap_eNB_data->Nid_cell[i] = servedCellMember->servedNRCellInfo.nrpCI;
 				    	  //servedCellMember->servedNRCellInfo.nrCellID.pLMN_Identity.buf[0]
-				    	  X2AP_INFO("TAC: %02x%02x%02x\n",
-				    			  servedCellMember->servedNRCellInfo.eXtended_TAC.buf[0],
-				    			  servedCellMember->servedNRCellInfo.eXtended_TAC.buf[1],
-				    			  servedCellMember->servedNRCellInfo.eXtended_TAC.buf[2]);
+                                          if (servedCellMember->servedNRCellInfo.fiveGS_TAC != NULL) {
+				    	    X2AP_INFO("TAC: %02x%02x%02x\n",
+				    			    servedCellMember->servedNRCellInfo.fiveGS_TAC->buf[0],
+				    			    servedCellMember->servedNRCellInfo.fiveGS_TAC->buf[1],
+				    			    servedCellMember->servedNRCellInfo.fiveGS_TAC->buf[2]);
+                                          } else {
+				    	    X2AP_INFO("TAC: (NULL)\n");
+                                          }
 
 				    	  X2AP_INFO("PLMN: %02x%02x%02x\n",
 				    			  servedCellMember->servedNRCellInfo.nrCellID.pLMN_Identity.buf[0],
diff --git a/openair3/UTILS/conversions.h b/openair3/UTILS/conversions.h
index cba8d0fd228..e39a841d965 100644
--- a/openair3/UTILS/conversions.h
+++ b/openair3/UTILS/conversions.h
@@ -380,7 +380,7 @@ do {                            \
 } while(0)
 */
 
-#define NR_EXTENDED_TAC_ID_TO_BIT_STRING(x, aSN)      \
+#define NR_FIVEGS_TAC_ID_TO_BIT_STRING(x, aSN)      \
 do {                                                    \
     (aSN)->buf = calloc(3, sizeof(uint8_t));    \
     (aSN)->size = 3;              \
-- 
GitLab