From c5006cf4edd5213bc9ed31f16842da40c8603aa7 Mon Sep 17 00:00:00 2001 From: Robert Schmidt Date: Thu, 5 Oct 2023 17:52:44 +0200 Subject: [PATCH] e1ap_common.h without E1AP ASN dependency --- openair2/E1AP/e1ap_common.c | 4 ++-- openair2/E1AP/e1ap_common.h | 12 +++++++----- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/openair2/E1AP/e1ap_common.c b/openair2/E1AP/e1ap_common.c index 28764b5dec..154468fb66 100644 --- a/openair2/E1AP/e1ap_common.c +++ b/openair2/E1AP/e1ap_common.c @@ -75,7 +75,7 @@ static bool check_transac_id(E1AP_TransactionID_t id, int *freeIdx) return true; } -E1AP_TransactionID_t E1AP_get_next_transaction_identifier() { +long E1AP_get_next_transaction_identifier() { E1AP_TransactionID_t genTransacId; bool isTransacIdValid = false; int freeIdx = 0; @@ -90,7 +90,7 @@ E1AP_TransactionID_t E1AP_get_next_transaction_identifier() { return genTransacId; } -void E1AP_free_transaction_identifier(E1AP_TransactionID_t id) { +void E1AP_free_transaction_identifier(long id) { for (int i=0; i < E1AP_MAX_NUM_TRANSAC_IDS; i++) { if (id == transacID[i]) { diff --git a/openair2/E1AP/e1ap_common.h b/openair2/E1AP/e1ap_common.h index dc615d75b3..ed6dd2606c 100644 --- a/openair2/E1AP/e1ap_common.h +++ b/openair2/E1AP/e1ap_common.h @@ -24,7 +24,6 @@ #ifndef E1AP_COMMON_H_ #define E1AP_COMMON_H_ #include "openair2/COMMON/e1ap_messages_types.h" -#include "e1ap_asnc.h" #include "openair2/COMMON/sctp_messages_types.h" #include "common/ngran_types.h" @@ -43,17 +42,20 @@ typedef struct e1ap_upcp_inst_s { extern int asn1_xer_print; -int e1ap_decode_pdu(E1AP_E1AP_PDU_t *pdu, const uint8_t *const buffer, uint32_t length); +// forward declaration so we don't require E1AP ASN.1 when including this +// header +struct E1AP_E1AP_PDU; +int e1ap_decode_pdu(struct E1AP_E1AP_PDU *pdu, const uint8_t *const buffer, uint32_t length); e1ap_upcp_inst_t *getCxtE1(instance_t instance); -E1AP_TransactionID_t E1AP_get_next_transaction_identifier(); +long E1AP_get_next_transaction_identifier(); +void E1AP_free_transaction_identifier(long id); void createE1inst(E1_t type, instance_t instance, e1ap_net_config_t *nc, e1ap_setup_req_t *req); -int e1ap_encode_send(E1_t type, sctp_assoc_t assoc_id, E1AP_E1AP_PDU_t *pdu, uint16_t stream, const char *func); +int e1ap_encode_send(E1_t type, sctp_assoc_t assoc_id, struct E1AP_E1AP_PDU *pdu, uint16_t stream, const char *func); void e1ap_common_init(); -void E1AP_free_transaction_identifier(E1AP_TransactionID_t id); #endif /* E1AP_COMMON_H_ */