diff --git a/openair2/ENB_APP/enb_agent.c b/openair2/ENB_APP/enb_agent.c index 6fff53559015c074e0c3086d933e223240a2d04a..d3e74348f85459bcabc134a304ec66d627d40ac7 100644 --- a/openair2/ENB_APP/enb_agent.c +++ b/openair2/ENB_APP/enb_agent.c @@ -38,6 +38,8 @@ #include "log.h" #include "enb_agent.h" +#include "enb_agent_extern.h" + #include "assertions.h" //#define TEST_TIMER @@ -95,7 +97,7 @@ void *enb_agent_task(void *args){ case TIMER_HAS_EXPIRED: msg = enb_agent_process_timeout(msg_p->ittiMsg.timer_has_expired.timer_id, msg_p->ittiMsg.timer_has_expired.arg); if (msg != NULL){ - data=enb_agent_send_message(msg,&size); + data=enb_agent_pack_message(msg,&size); if (message_put(d->tx_mq, data, size, priority)){ err_code = PROTOCOL__PROGRAN_ERR__MSG_ENQUEUING; goto error; @@ -182,7 +184,7 @@ void *receive_thread(void *args) { // check if there is something to send back to the controller if (msg != NULL){ - data=enb_agent_send_message(msg,&size); + data=enb_agent_pack_message(msg,&size); if (message_put(d->tx_mq, data, size, priority)){ err_code = PROTOCOL__PROGRAN_ERR__MSG_ENQUEUING; diff --git a/openair2/ENB_APP/enb_agent_common.h b/openair2/ENB_APP/enb_agent_common.h index c2c57ca4ea820d73d83ae5dac4cc561cc5d4b32a..f4add1ae2e2816bf607f46d5acfea86030ed62c8 100644 --- a/openair2/ENB_APP/enb_agent_common.h +++ b/openair2/ENB_APP/enb_agent_common.h @@ -67,9 +67,17 @@ typedef int (*enb_agent_message_destruction_callback)( Protocol__ProgranMessage *msg ); +/********************************** + * progRAN protocol messages helper + * functions and generic handlers + **********************************/ + int enb_agent_serialize_message(Protocol__ProgranMessage *msg, void **buf, int *size); int enb_agent_deserialize_message(void *data, int size, Protocol__ProgranMessage **msg); +void * enb_agent_pack_message(Protocol__ProgranMessage *msg, + uint32_t * size); + err_code_t enb_agent_destroy_progran_message(Protocol__ProgranMessage *msg); int prp_create_header(xid_t xid, Protocol__PrpType type, Protocol__PrpHeader **header); @@ -90,11 +98,6 @@ Protocol__ProgranMessage* enb_agent_handle_message (mid_t mod_id, Protocol__ProgranMessage *enb_agent_handle_timed_task(void *args); -void * enb_agent_send_message(Protocol__ProgranMessage *msg, - uint32_t * size); - - - diff --git a/openair2/ENB_APP/enb_agent_handler.c b/openair2/ENB_APP/enb_agent_handler.c index 02092a84f8e29343df20651b7704cf3c1cead580..0f5146fe6d745b19cc73f5b05fc6d6413a622c15 100644 --- a/openair2/ENB_APP/enb_agent_handler.c +++ b/openair2/ENB_APP/enb_agent_handler.c @@ -56,6 +56,7 @@ enb_agent_message_destruction_callback message_destruction_callback[] = { enb_agent_destroy_echo_reply, enb_agent_mac_destroy_stats_request, enb_agent_mac_destroy_stats_reply, + enb_agent_mac_destroy_sr_info, }; static const char *enb_agent_direction2String[] = { @@ -108,7 +109,7 @@ error: -void * enb_agent_send_message(Protocol__ProgranMessage *msg, +void * enb_agent_pack_message(Protocol__ProgranMessage *msg, uint32_t * size){ void * buffer;