From 2e453eff69427838e44b480fbf99b62fa79572cc Mon Sep 17 00:00:00 2001 From: Robert Schmidt <robert.schmidt@eurecom.fr> Date: Fri, 7 Sep 2018 12:14:23 +0200 Subject: [PATCH] move F1AP_get_next_transaction_identifier() to f1ap_common.c --- cmake_targets/CMakeLists.txt | 1 + openair2/F1AP/CU_F1AP.c | 11 ----------- openair2/F1AP/DU_F1AP.c | 15 --------------- openair2/F1AP/f1ap_common.c | 22 ++++++++++++++++++---- openair2/F1AP/f1ap_common.h | 13 +++++++------ 5 files changed, 26 insertions(+), 36 deletions(-) diff --git a/cmake_targets/CMakeLists.txt b/cmake_targets/CMakeLists.txt index 53d461cbec..fc646020b7 100644 --- a/cmake_targets/CMakeLists.txt +++ b/cmake_targets/CMakeLists.txt @@ -546,6 +546,7 @@ add_library(F1AP ${F1AP_DIR}/f1ap_encoder.c ${F1AP_DIR}/f1ap_decoder.c ${F1AP_DIR}/f1ap_handlers.c + ${F1AP_DIR}/f1ap_common.c ${F1AP_DIR}/sctp_du.c ${F1AP_DIR}/sctp_cu.c ) diff --git a/openair2/F1AP/CU_F1AP.c b/openair2/F1AP/CU_F1AP.c index c0bdeaf1a2..0684c866b2 100644 --- a/openair2/F1AP/CU_F1AP.c +++ b/openair2/F1AP/CU_F1AP.c @@ -80,17 +80,6 @@ typedef struct f1ap_info { } f1ap_info_t; -// helper functions -#define F1AP_TRANSACTION_IDENTIFIER_NUMBER 3 -#define NUMBER_OF_eNB_MAX 3 - -uint8_t F1AP_get_next_transaction_identifier(module_id_t enb_mod_idP, module_id_t cu_mod_idP) { - static uint8_t transaction_identifier[NUMBER_OF_eNB_MAX]; - transaction_identifier[enb_mod_idP+cu_mod_idP] = (transaction_identifier[enb_mod_idP+cu_mod_idP] + 1) % F1AP_TRANSACTION_IDENTIFIER_NUMBER; - //LOG_T(F1AP,"generated xid is %d\n",transaction_identifier[enb_mod_idP+cu_mod_idP]); - return transaction_identifier[enb_mod_idP+cu_mod_idP]; -} - // ============================================================================== static void CU_handle_sctp_data_ind(sctp_data_ind_t *sctp_data_ind) { diff --git a/openair2/F1AP/DU_F1AP.c b/openair2/F1AP/DU_F1AP.c index 359a2b9415..70420fd74f 100644 --- a/openair2/F1AP/DU_F1AP.c +++ b/openair2/F1AP/DU_F1AP.c @@ -42,14 +42,6 @@ #include "T.h" -// helper functions -#define F1AP_TRANSACTION_IDENTIFIER_NUMBER 3 -#define F1AP_UE_IDENTIFIER_NUMBER 3 -#define NUMBER_OF_eNB_MAX 3 - -// #include "common/ran_context.h" -// extern RAN_CONTEXT_t RC; - /* This structure describes association of a DU to a CU */ typedef struct f1ap_info { @@ -86,13 +78,6 @@ typedef struct f1ap_info { void DU_handle_sctp_association_resp(instance_t instance, sctp_new_association_resp_t *sctp_new_association_resp); -uint8_t F1AP_get_next_transaction_identifier(module_id_t enb_mod_idP, module_id_t du_mod_idP) { - static uint8_t transaction_identifier[NUMBER_OF_eNB_MAX]; - transaction_identifier[enb_mod_idP+du_mod_idP] = (transaction_identifier[enb_mod_idP+du_mod_idP] + 1) % F1AP_TRANSACTION_IDENTIFIER_NUMBER; - //LOG_T(F1AP,"generated xid is %d\n",transaction_identifier[enb_mod_idP+du_mod_idP]); - return transaction_identifier[enb_mod_idP+du_mod_idP]; -} - uint8_t F1AP_get_UE_identifier(module_id_t enb_mod_idP, int CC_idP, int UE_id) { static uint8_t UE_identifier[NUMBER_OF_eNB_MAX]; UE_identifier[enb_mod_idP+CC_idP+UE_id] = (UE_identifier[enb_mod_idP+CC_idP+UE_id] + 1) % F1AP_UE_IDENTIFIER_NUMBER; diff --git a/openair2/F1AP/f1ap_common.c b/openair2/F1AP/f1ap_common.c index 80c5b7b70d..22468ed054 100644 --- a/openair2/F1AP/f1ap_common.c +++ b/openair2/F1AP/f1ap_common.c @@ -35,10 +35,10 @@ #include "f1ap_common.h" //#include "S1AP-PDU.h" +#if defined(EMIT_ASN_DEBUG_EXTERN) int asn_debug = 0; int asn1_xer_print = 0; -#if defined(EMIT_ASN_DEBUG_EXTERN) inline void ASN_DEBUG(const char *fmt, ...) { if (asn_debug) { @@ -56,6 +56,7 @@ inline void ASN_DEBUG(const char *fmt, ...) } #endif +/* ssize_t f1ap_generate_initiating_message( uint8_t **buffer, uint32_t *length, @@ -76,9 +77,10 @@ ssize_t f1ap_generate_initiating_message( if (asn1_xer_print) { xer_fprint(stdout, &asn_DEF_S1AP_PDU, (void *)&pdu); - } + }*/ /* We can safely free list of IE from sptr */ +/* ASN_STRUCT_FREE_CONTENTS_ONLY(*td, sptr); if ((encoded = aper_encode_to_new_buffer(&asn_DEF_S1AP_PDU, 0, &pdu, @@ -110,9 +112,10 @@ ssize_t f1ap_generate_successfull_outcome( if (asn1_xer_print) { xer_fprint(stdout, &asn_DEF_S1AP_PDU, (void *)&pdu); - } + }*/ /* We can safely free list of IE from sptr */ +/* ASN_STRUCT_FREE_CONTENTS_ONLY(*td, sptr); if ((encoded = aper_encode_to_new_buffer(&asn_DEF_S1AP_PDU, 0, &pdu, @@ -146,8 +149,9 @@ ssize_t f1ap_generate_unsuccessfull_outcome( if (asn1_xer_print) { xer_fprint(stdout, &asn_DEF_S1AP_PDU, (void *)&pdu); } - +*/ /* We can safely free list of IE from sptr */ +/* ASN_STRUCT_FREE_CONTENTS_ONLY(*td, sptr); if ((encoded = aper_encode_to_new_buffer(&asn_DEF_S1AP_PDU, 0, &pdu, @@ -197,3 +201,13 @@ void f1ap_handle_criticality(F1ap_Criticality_t criticality) { } +*/ + +uint8_t F1AP_get_next_transaction_identifier(module_id_t enb_mod_idP, module_id_t cu_mod_idP) +{ + static uint8_t transaction_identifier[NUMBER_OF_eNB_MAX]; + transaction_identifier[enb_mod_idP+cu_mod_idP] = + (transaction_identifier[enb_mod_idP+cu_mod_idP] + 1) % F1AP_TRANSACTION_IDENTIFIER_NUMBER; + //LOG_T(F1AP,"generated xid is %d\n",transaction_identifier[enb_mod_idP+cu_mod_idP]); + return transaction_identifier[enb_mod_idP+cu_mod_idP]; +} diff --git a/openair2/F1AP/f1ap_common.h b/openair2/F1AP/f1ap_common.h index dbe675dd8a..0defd872b6 100644 --- a/openair2/F1AP/f1ap_common.h +++ b/openair2/F1AP/f1ap_common.h @@ -37,9 +37,10 @@ #ifndef F1AP_COMMON_H_ #define F1AP_COMMON_H_ -/* Defined in asn_internal.h */ -// extern int asn_debug_indent; -extern int asn_debug; +#include "openairinterface5g_limits.h" + +#define F1AP_UE_IDENTIFIER_NUMBER 3 +#define F1AP_TRANSACTION_IDENTIFIER_NUMBER 3 #if defined(EMIT_ASN_DEBUG_EXTERN) inline void ASN_DEBUG(const char *fmt, ...); @@ -369,9 +370,6 @@ inline void ASN_DEBUG(const char *fmt, ...); #define F1AP_UE_ID_FMT "0x%06"PRIX32 -extern int asn_debug; -extern int asn1_xer_print; - #include "assertions.h" #if defined(ENB_MODE) @@ -402,4 +400,7 @@ typedef int (*f1ap_message_decoded_callback)( F1AP_F1AP_PDU_t *message_p ); + +uint8_t F1AP_get_next_transaction_identifier(module_id_t enb_mod_idP, module_id_t cu_mod_idP); + #endif /* F1AP_COMMON_H_ */ -- GitLab