Commit Graph
20 Commits
Author SHA1 Message Date
Robert Schmidt beec74b01a Correctly stop link_manager sender and receiver threads
This changes the destroy_link_manager() function to:
* call a new function message_get_unlock() to unlock the sending thread from
  its blocking message_get()
* calls pthread_cancel() on the receiving thread, because this unlocks any
  blocking read from a file descriptor

The same message_get_unlock() function has been added ringbuffer_queue to keep
the interfaces the same (it does nothing, because ringbuffer_queue is
non-blocking).
2019-02-07 17:56:56 +01:00
Robert Schmidt 0643d6b561 Make queue_recv() functions return size, not as out-param 2019-01-29 16:55:15 +01:00
Robert Schmidt 920a4abb6d Make link_manager threads joinable
This makes it possible to stop the link_manager by joining its threads.
2018-11-07 10:53:59 +01:00
Robert Schmidt 0efde02161 Sanitize link_manager interface, correct in FlexRAN/PROTO_AGENT
This commit cleans up the link_manager interface:
* don't provide peer_addr/port in create_link_manager() (for TCP/SCTP it is not
  needed, so in the UDP case in needs to be set explicitly)
* Make FlexRAN connect again (correct hardcoded address)
* Fix FlexRAN: retain the manager pointer
* Fix FlexRAN: store receive_queue pointer
* the link_manager's sender thread passes the correct peer_addr/port for the
  UDP case
2018-11-07 10:48:36 +01:00
Robert Schmidt 34adfd2af8 ASYNC_IF link_{send,receive}_packet(): infer socket type automatically 2018-11-07 10:48:36 +01:00
Robert Schmidt 7f40bf76fb ASYNC_IF: join threads when destroying link manager 2018-09-20 15:03:47 +02:00
Robert Schmidt f060385b6a Improve UDP support of ASYNC_IF
* peer_addr is now const
* new_link_udp_server() can bind to address or INADDR_ANY
* socket_udp_receive() happens without a loop
* socket_udp_send() happens without a loop
* sending in two packets (first size, then data) is only performed for TCP,
  SCTP, not for UDP anymore (it is unreliable, so we could miss something and
  will receive complete garbage)
2018-09-20 15:03:47 +02:00
Robert Schmidt cf55a513d9 ASYNC_IF: peer addresses as const in interface 2018-09-19 11:46:38 +02:00
Calvin HSU b58ef54608 Merge remote-tracking branch 'origin/develop' into feature-127-protocol-split 2018-08-28 12:22:59 +02:00
frtabu b85cbddeec log.c simplification, fix usefull functionality which never worked, move all log code from openair2 to common 2018-07-30 20:07:22 +02:00
Nikos Makris bc0f49cea0 Merge remote-tracking branch 'origin/develop' into feature-127-protocol-split
OAISIM NoS1 broken, needs fixing (no linking of libraries for the UE code)
2018-02-02 20:21:34 +02:00
Cedric Roux 1b1f941e3c upgrade license to version 1.1 2017-10-23 12:22:13 +02:00
Nikos Makris 9db40696f7 Added functionality for UDP/TCP/SCTP transferring of data over the ASYNC channel interface.
Added selection of interfaces through the configuration file with a new block of statements as follows:

    FLEXSPLIT_INTERFACES :
    {
        DU_INTERFACE_NAME_FOR_F1U           = "lo";
        DU_IPV4_ADDRESS_FOR_F1U             = "127.0.0.1/24";
        DU_PORT_FOR_F1U			    = 2210;

        CU_INTERFACE_NAME_FOR_F1U           = "lo";
        CU_IPV4_ADDRESS_FOR_F1U             = "127.0.0.1";	//Address to search the DU
        CU_PORT_FOR_F1U			    = 2210;

        // One of TCP/UDP/SCTP
        F1_U_TRANSPORT_TYPE 		    = "UDP";
    };
2017-07-21 14:02:09 +03:00
Xenofon Foukas 9fc584d173 Fixed FlexRAN-related warnings 2017-01-16 17:45:58 +02:00
Xenofon Foukas 8def47c488 Changed old licenses in FlexRAN agent source files 2016-12-05 22:04:12 +02:00
Nikos Makris 70ad5d587e Functionality for a simple protocol agent exchanging echo_request/reply messages 2016-09-05 14:28:58 +03:00
Navid Nikaein e508be85d4 add async interface and flexsplit messages 2016-08-29 16:04:07 +02:00
Xenofon Foukas 3a1f3df882 Added OAI priority to send and receive thread of agent 2016-03-09 13:13:03 +00:00
Xenofon Foukas 34db5f2003 Moved agent async interface to lock-free implementation using lock-free ringbuffer 2016-03-09 12:19:16 +00:00
Navid Nikaein 5c0098e2f0 * add async interface support for eNB agent and create a lib 2015-12-15 11:53:47 +01:00