377 Commits (b7aad27d8662a4574e9b4fc72a698ea70fb7464b)

Author SHA1 Message Date
Pedro Alvarez e68956bcf6 Adding discard timer timeout to PDCP config. 5 years ago
Pedro Alvarez 9870c73366 Starting to add discardTimers to PDCP NR. 5 years ago
Francisco Paisana c29d8b418a fix coverity va_list issues 5 years ago
Francisco Paisana 54992e72f1 fixed and simplified multiqueue task api to avoid dangling pointers. 5 years ago
Francisco Paisana 6746c5dfa5 pass task functor by copy to avoid dangling pointers 5 years ago
Francisco Paisana b2d3c2a150 fix compilation issue 5 years ago
Francisco Paisana ac4d3b9624 std::functions do not accept move-only captures. So I had to create a wrapper earlier. In this PR, I cleaned a bit the previous API for the code to be a bit more readable 5 years ago
Francisco Paisana c9f092e8e9 created a nullsink and a TESTASSERT for C 5 years ago
Francisco Paisana 67ccaf1029 created a file with common test utils, including assertions, a logger specialized for tests that counts the number of errors and warnings during the test run and can print diagnostics on exit 5 years ago
Andre Puschmann 47019e26f6 fix signed/unsigned comparison warning 5 years ago
Andre Puschmann 6f72cbffab fix snprintf of uint64 for ARM 5 years ago
Francisco Paisana e8487211e4 changed the naming of mch to m1u in the gtpu class 5 years ago
Francisco Paisana 1400777639 removed 1st thread from GTPU 5 years ago
Francisco Paisana a9a33256e9 fixed some of the net utils functions 5 years ago
Francisco Paisana 546ee98879 fixed small issue that was causing compilation errors 5 years ago
Francisco Paisana 2de0eee9c7 clean up some comments 5 years ago
Francisco Paisana 76673d2d40 cleaned up socket util methods, and made the S1AP non-blocking. 5 years ago
Francisco Paisana 2c3e4a3daf creation of util class net_addr_t that provides methods for conversion of IP addr const char* to sockaddr_in 5 years ago
Francisco Paisana 31dffde6c3 simplified interface and made it more generic to different types of sockets 5 years ago
Francisco Paisana e37a718f21 created a sctp socket class 5 years ago
Francisco Paisana 131b1a7e41 added a class to handle multiple sockets via a select 5 years ago
Andre Puschmann 98ac39e617 fix compilation when macro SRSLTE_BUFFER_POOL_LOG_ENABLED is enabled 5 years ago
Francisco Paisana 57cd40ca31 added an ho required message send from SeNB to MME 5 years ago
Francisco Paisana 690a9850e7 cleaned up some old patterns and run clang-format in RRC and scheduler 5 years ago
Pedro Alvarez ac9ee9d863 Added comment. 5 years ago
Pedro Alvarez 9998b3e857 Small white space fix and clang-format on pdcp_nr_test.h 5 years ago
Pedro Alvarez 8511fca940 Clang-formated to prepare for PR 5 years ago
Pedro Alvarez ceea761ca4 Added append_bytes method to byte_buffer_t class. Continue to reduce boilerplate. 5 years ago
Pedro Alvarez b92c99ad2f Removing PDCP config from rrc_interfaces_types. Starting to add t_reordering configuration. 5 years ago
Pedro Alvarez 45d298507b Starting to move pdcp configs to rrc_interface_types. Starting to add test for reorder timeout. 5 years ago
Andre Puschmann f4a0bebe1f fix handling of invalid MAC LCIDs 5 years ago
Andre Puschmann aa9733eb59 add packing for CCCH over UL-SCH for MAC NR 5 years ago
Francisco Paisana 8440126d35 removal of srslte::timers class 5 years ago
Francisco Paisana 9ae5563331 fixed timer issue with setting the duration. Setting the duration cannot reset the on-going timer run 5 years ago
Francisco Paisana d2c56caf7e applied new timer class to the whole code base 5 years ago
Francisco Paisana 5953d5ef96 fixed some potential bug related to timer getting stopped, but signaling that it expired 5 years ago
Francisco Paisana 551192705e allow for pre-reservation of timers vector and priority queue 5 years ago
Francisco Paisana 50a1c9d557 addressed potential overflow, and extended timer test to check if ordering is working correctly 5 years ago
Francisco Paisana 349646a9da created a new class for timers. It uses a priority queue to avoid incrementing all timers every tti (step_all() went from O(N) to O(1)), and that is not bounded in number of timers. Not being bounded will be useful for layers that require one or more timers per UE 5 years ago
Francisco Paisana 15bde8660a getting a future of an already finished proc is dangerous 5 years ago
Francisco Paisana 248583ecdf added extra logging and removed uneeded member from proc_t 5 years ago
Francisco Paisana b254bdbb93 typedefed the proc_result_t<void> to become proc_state_t 5 years ago
Francisco Paisana f2d88e5a5b simplified NAS rrc connection request procedure
move non-type-specific methods of proc_t to its base class.
procedure state machine was simplified via a future-type. Now procedures dont get stuck until the user reads the procedure outcome.
made the NAS procedures more event trigger/reaction-based.
5 years ago
Francisco Paisana 8864787f59 added the continuation functionality to procedures via the "then()" method. 5 years ago
Francisco Paisana c1be118d1d new wrapper-based design for stack procedures. Removes extra base class, gets rid of spurious copies/moves during the pop(), and allows the use of a non-default ctor() 5 years ago
Ismael Gomez 3828e03f33
Refactor in eNodeB, add channel emulator and fixes in OFDM
* Added channel emulator to srsENB. Added support for fixed delay

* Bug in OFDM when using nonguru mode

* A few changes and refactor in eNodeB
5 years ago
Xavier Arteaga 10480f62b3 SRSENB: Split sf_worker and cc_worker 5 years ago
Andre Puschmann d5835fc8a0 add info_long() method to log filter 5 years ago
Andre Puschmann 626259eede add helper method to obtain thread name
this is helpful to, for example, print the name of
the thread that calls a function, i.e.:

log.console("%s from %s\n", __PRETTY_FUNCTION__, thread::get_name().c_str());
5 years ago
Andre Puschmann d8fedf2e19 fix parsing of corrupted MAC PDUs 5 years ago
Francisco Paisana a2f1998350 fix issue with thread pool shut down 5 years ago
Francisco Paisana c413fadea9 created a queue-based thread pool. Tasks are inserted into a queue and then popped by the thread pool workers to be processed. 5 years ago
Andre Puschmann 57317fab7c expose debug_long to class log and use in RRC to log ASN1 structs 5 years ago
Francisco Paisana 14267640ee implemented andre's PR review requests 5 years ago
Francisco Paisana ceba00f00e extended multiqueue to support blocking push 5 years ago
Francisco Paisana 647c624423 created a multiqueue handler, and started using it for the ue stack 5 years ago
Andre Puschmann 95b2239dd5 add base class for socket handler using netsource object 5 years ago
Andre Puschmann 6baa89cd2c add MAC NR PDU packing and associated unit tests 5 years ago
Andre Puschmann 090f2b4110 add MAC-NR PCAP support 5 years ago
Francisco Paisana cd521a84cb bigger log buffer. Now it is 1024 chars (#649)
Use dynamic string for debug_long() function and known relation of size between log_str and log_filter
5 years ago
Andre Puschmann 5189bbad69 add stop() to logger_file
this allows to close and currently running log process, flush the content
to the file, continue logging during that time, open a new file
and write the new log entries to that new file

basically it allows to use the logger_file multiple times without
needing to destroy the object

this is used in the UE tester to write each testcase into a separate
log file
5 years ago
Pedro Alvarez 1d3e541069 Fixed warning on bytes_to_mnc 5 years ago
Pedro Alvarez 9b20a0de16 Added comment to zuc.cc and zuc.h 5 years ago
Pedro Alvarez 004db4a067 Applied clang-format to zuc_support PR. 5 years ago
David Rupprecht 50332089ce Add EEA3 and EIA3 support for UE/enodeb and MME 5 years ago
David Rupprecht d580a94dab Add EIA3 and test case 5 years ago
David Rupprecht 7e13860dd5 Add decryption function and all tests for enc 5 years ago
David Rupprecht 0841d837de Make ZUC state ful no global vars 5 years ago
David Rupprecht ef4cf7aa52 First ZUC working test case 5 years ago
Ismael Gomez c92c61d560
Optimized front-end logging processing (#641)
Avoid memory allocation and stringstream in log frontend calls (executed from worker threads). Uses a buffer pool of fixed buffer and vsnprintf
5 years ago
Francisco Paisana 67d6a25194 Moving mac timers to stack timers (#638)
* first step towards moving MAC timers to stack. Mac is still using its own timers. srslte::timers class can be restructured.

* moved timers out of the UE MAC
5 years ago
Francisco Paisana c9d3b61038 added resumable procedures to make RRC and NAS non-blocking 5 years ago
Andre Puschmann e42449532b fix wrong namespace definition in various places 5 years ago
Pedro Alvarez 6efa944b5e Removed srslte prefix from pdcp_config_t 5 years ago
Pedro Alvarez 3da0391fff Adding default initializers to PDCP config. 5 years ago
Pedro Alvarez 494be243c0 Changed security direction to use an enum. 5 years ago
Pedro Alvarez f90b69e5f4 More clang-format for PDCP 5 years ago
Pedro Alvarez 491695ab77 Clang-formated PDCP NR PR. 5 years ago
Pedro Alvarez d3b6828082 Changed PDCP configuration to explicitly have tx and rx direction. Decrypt on PDCP NR seems fine. 5 years ago
Pedro Alvarez 73e30743d1 Added enum to PDCP config to replace two bools. 5 years ago
Pedro Alvarez 457f35699d Reverted back to a single config structure between PDCP NR and PDCP LTE. 5 years ago
Pedro Alvarez 9d0db108c6 Continue to add PDCP tx test 5 years ago
Pedro Alvarez 2081b22465 Added PDCP_SN_LEN constants. Added bearer_id and direction back to the pdcp_entity_base. 5 years ago
Pedro Alvarez 52f75c3cf2 Starting to add PDCP NR state variables. 5 years ago
Pedro Alvarez 1944bf9a80 Continue to split pdcp_entity_lte and pdcp_entity_nr. Compiling now. 5 years ago
Pedro Alvarez 005d03cb1a Starting to split pdcp_entity into pdcp_entity_lte and pdcp_entity_nr to support NR PDCP 5 years ago
Andre Puschmann 09610ce788 add type setter to sch_subh and use it for MCH PDUs 5 years ago
yagoda 408400bee6 adding fixes and tests for eMBMS 5 years ago
Andre Puschmann 9ee415ac82 correct the max size for a single TB
since the size in bits is counted per TB we don't need to allocate
space for the 2x2 MIMO case. Both CW have their own buffer.
5 years ago
Ismael Gomez c9c43e44e9 Fixed PDU buffer size 5 years ago
Pedro Alvarez 9597cc4c14 Clang-formated liblte_* 5 years ago
Andre Puschmann 4e86b2f6b2 introduce layerd architecture we use for UE to eNB
- this allows flexible use of different PHYs and radios
- use common radio_multi (moved to lib)
5 years ago
Andre Puschmann 92f0d58856 mac: move further init/config into ctor to allow early logging, etc. 5 years ago
Francisco Paisana b936629221 removed rrc asn1 header from bcd_helpers, from rlc_interface, and rlc tests 5 years ago
Francisco Paisana bb0dbf0f1c created a asn1 utils with helper functions and types related to the asn1. These types/functions will help isolate the rrc_asn1 lib from most of the layers, reducing this way the compile times, and leading to better isolation. This will also make the transition to NR smoother. I removed the asn1 types from the NAS and USIM interface so far. 5 years ago
Andre Puschmann 82a69fb51c mux: fix packing of short MAC PDUs 5 years ago
Andre Puschmann 4aaa0473b9 pdu: remove unused variable total_sdu_len 5 years ago
Andre Puschmann b6d7fd5def improve error handling in PDU packing 5 years ago
Andre Puschmann da35f41dd5 rework MAC logical channel prioritization 5 years ago
Andre Puschmann 414e55fafc pcap: add dtor
this fixes issue if object is destroyed and PCAP is still open
5 years ago