diff --git a/openair2/LAYER2/PROTO_AGENT/cu_test.c b/openair2/LAYER2/PROTO_AGENT/cu_test.c index 923b70607cb634d61a55bc3e1b89d4248d8a11fb..ae9a2129e5af3ab14bc5e048e83a1ff38e1567aa 100644 --- a/openair2/LAYER2/PROTO_AGENT/cu_test.c +++ b/openair2/LAYER2/PROTO_AGENT/cu_test.c @@ -35,12 +35,19 @@ pdcp_data_ind( ) { fwrite(sdu_buffer_pP->data, sdu_buffer_sizeP, 1, stdout); - free_mem_block(sdu_buffer_pP, __func__); fflush(stdout); + free_mem_block(sdu_buffer_pP, __func__); + /* cannot free because of const */ + free(ctxt_pP); recv_client = 1; return 0; } +void close_proto_agent(void) +{ + proto_agent_stop(0); +} + int main(int argc, char *argv[]) { const cudu_params_t params = { @@ -79,6 +86,7 @@ int main(int argc, char *argv[]) fprintf(stderr, "error on proto_agent_start()\n"); return 3; } + atexit(close_proto_agent); /* wait for first packet of client */ while (!recv_client) sleep(1); @@ -87,7 +95,7 @@ int main(int argc, char *argv[]) /* now send back at the same time */ gettimeofday(&t_start, NULL); while ((size = fread(s, 1, BUF_MAX, f)) > 0) { - usleep(100); + usleep(10); totsize += size; mem.data = &s[0]; proto_agent_send_rlc_data_req(&p, 0, 0, 0, 0, 0, size, &mem); @@ -101,7 +109,7 @@ int main(int argc, char *argv[]) fprintf(stderr, "check files using 'diff afile bfile'\n"); /* give some time in case the other direction is slower */ - sleep(60); + sleep(5); return 0; } diff --git a/openair2/LAYER2/PROTO_AGENT/du_test.c b/openair2/LAYER2/PROTO_AGENT/du_test.c index e23503cc74dec288a1e9bfa6f69372a9b461dc1a..04fac69f31878422b9918ddcbdbf712ea4b2d9b3 100644 --- a/openair2/LAYER2/PROTO_AGENT/du_test.c +++ b/openair2/LAYER2/PROTO_AGENT/du_test.c @@ -38,11 +38,17 @@ rlc_op_status_t rlc_data_req (const protocol_ctxt_t* const ctxt_pP, ) { fwrite(sdu_pP->data, sdu_sizeP, 1, stdout); - free_mem_block(sdu_pP, __func__); fflush(stdout); + free_mem_block(sdu_pP, __func__); + free(ctxt_pP); return 0; } +void close_proto_agent(void) +{ + proto_agent_stop(0); +} + int main(int argc, char *argv[]) { const cudu_params_t params = { @@ -81,10 +87,11 @@ int main(int argc, char *argv[]) fprintf(stderr, "error on proto_agent_start()\n"); return 3; } + atexit(close_proto_agent); gettimeofday(&t_start, NULL); while ((size = fread(s, 1, BUF_MAX, f)) > 0) { - usleep(100); + usleep(10); totsize += size; mem.data = &s[0]; proto_agent_send_pdcp_data_ind(&p, 0, 0, 0, size, &mem); @@ -98,7 +105,7 @@ int main(int argc, char *argv[]) fprintf(stderr, "check files using 'diff afile bfile'\n"); /* wait, we are possibly receiving data */ - sleep(60); + sleep(5); return 0; }