1317 Commits (9a264b62c4466c83b9fdc6b189edf247bbe27fe9)

Author SHA1 Message Date
Andre Puschmann 1b1e7ac1a6 only print error when trying to enable non-existing carrier in UE 5 years ago
Xavier Arteaga 76408b195e Rename TX_DELAY and FDD_HARQ_DELAY_MS 5 years ago
Xavier Arteaga 65711d06dc PRACH TA base default to 0 and apply clang-format 5 years ago
Xavier Arteaga e8f9bfc6ba Addition of PRACH TA correction 5 years ago
Andre Puschmann 356fa9258b check configured flag of SCell struct before enabling SCell
this prevents crashing the UE when receiving a SCell activation
command before the SCell has been configured from RRC
5 years ago
Pedro Alvarez 96c82b3fc6 Moved PDCP configs to pdcp_config.h. Added `as_security_cfg_t` structure to hold access stratum keys.
Refactored PDCP, RRC and USIM accordingly.
5 years ago
Andre Puschmann f2e1bfa699 refactor naming for s/p/cell structs and {enb,ue}_cc_idx 5 years ago
Daniel Willmann 1314b8f653 Implement override_lcid() function in ttcn3_sys_interface
Fixes: TC_7_1_1_1 (#6)
5 years ago
Pau Espin Pedrol 1d81ef9e24 gw: Proper error log on non-existing netns 5 years ago
Andre Puschmann 5b8b718482 simplify NAS security handling and fix missing call in act test mode complete
add extra method to apply NAS security config, if configured,
that can be used by each NAS message sender
5 years ago
Ismael Gomez 4e12405fff
Remove radio_multi class and organize channels, ports and carrier buffers (#1019) 5 years ago
Andre Puschmann e2892047e9 refactor UE shutdown
use alarm to give UE time to gracefully terminate
if the UE can't terminate and the alarm goes off, flush the logs
and exit
5 years ago
Andre Puschmann 664170fec6 pcap: add CC index when writing PCAP 5 years ago
Andre Puschmann df31a5c4cc store CC idx in DL/UL HARQ entity 5 years ago
Francisco Paisana fed06138b9 moved rach_detected to stack thread. Created a more friendly interface to enqueue tasks in stack 5 years ago
Andre Puschmann 8e4f2a4d59 add UE parameter to enable TTI stats calculations 5 years ago
Andre Puschmann a8bbe551ac move thread class into srslte namespace to avoid ambiguity between std::thread 5 years ago
Andre Puschmann 8b46f631c1 add basic TTI stats in stack 5 years ago
Andre Puschmann ae4cfb50f2 print warning to console if TUN interface couldn't be setup 5 years ago
Xavier Arteaga 2fc0832f05 Addition of DL HARQ-ACK generation procedure for eNb DL and minor aesthetic changes 5 years ago
Andre Puschmann e7c10270fa ttcn3_ss: fix security activation for PDCP 5 years ago
Andre Puschmann 9e113f8b27 pdcp: allow to configure security for rx/tx seperately
previously PDCP security (integrity and ciphering) could only
be enabled for both Rx and Tx at the same time.

this, however, caused an issue during the conformance testing in which,
in TC_8_2_1_1() for example, the eNB sends a SecModeCommand and a
RRC Reconfiguration in the same MAC TB. In this case, the eNB
needs to be able to enable DL security right after sending the SecModeCmd
in order to send the RRCReconfig encrypted. However, enabling UL security needs
to be postponed until after the SecModeComplete is received.

This patch allows to enable PDCP security for rx/tx independently if
that is needed. The default way is like before, enabling it for tx/rx at
the same time.
5 years ago
Andre Puschmann 5a03eaed2b ss: move timing_info_t to ttcn3_helpers, fix PDCP count handling 5 years ago
Andre Puschmann 72c5b381e4 fix bug when parsing cipher algo config for SS 5 years ago
Andre Puschmann 8a69772ebc rewrite packing of DL PDU in SS
the new algo tries to write more than just one RLC PDU inside a MAC PDU
if this is possible
5 years ago
Andre Puschmann e919c57a32 add handling of FollowOnFlag from tester 5 years ago
Andre Puschmann 51864bc03c rrc: print release cause when receiving rrc connection release 5 years ago
Francisco Paisana ac52208409 removed most of clang-tidy warnings, introduced logmap in asn1, fixed info object naming in s1ap and ngap for successful and unsuccessful outcomes 5 years ago
Andre Puschmann dffa2af461 fix NAS re-attach after detach request from network
needed to add a timer to delay transmission of attach request
to allow RRC release on eNB side
5 years ago
Andre Puschmann e4f85ec390 remove re-arming of t3411 after PLMN search
t3411 is restarted after attach or TAU failure only
5 years ago
Andre Puschmann 89d5876470 add TimingInfo support for remaining SS commands 5 years ago
Andre Puschmann 5b31c1db43 nas: delete security context when receiving attach reject with cause 3, 6, or 35 5 years ago
Francisco Paisana e859d622c7 added logref class to forbid logmap pointer invalidation. Created a test for the logref, and introduced it in the scheduler, rrc and nas 5 years ago
Francisco Paisana 4739f3084f fix logs for SIB acquire 5 years ago
Francisco Paisana b8b8740258 fix wraparound in si proc and error in scell parsing 5 years ago
Andre Puschmann 81e28aa9dc add basic support for TimingInfo field from tester
this fixes an issue where commands are received out of
order and we are therefore applying configs incorrectly. if
commands include a timinginfo we are now putting the command
on a queue that the SS reads after the start of a new TTI.

the security and cell reconfig commands will be added in another
PR after the AS_security command has been fixed.
5 years ago
Andre Puschmann 55a5947df7 add default init to TTCN3 syssim to prevent segfault when tc_start isn't received 5 years ago
Andre Puschmann 39f2011699 fix issue in SS where Msg4 wouldn't be sent because ConnectionSetup is provided too late 5 years ago
Andre Puschmann b88e877b4c ttcn3: make SS single threaded and use SCTP for test ports
- remove all threading from SS
- use epoll to handle test port connections, signals, and timers
- convert testport interface to SCTP
5 years ago
Andre Puschmann 6d88b640b7 rrc: log full message if decoding fails 5 years ago
Francisco Paisana 82629c6910 made failure to compute si periodicity more explicit. Created a const for sib1 periodicity 5 years ago
Francisco Paisana 5a64fc0a93 sib_acquire_proc is not tti-driven anymore. No need to call run explicitly 5 years ago
Francisco Paisana 57da7fd986 fixed issue with setting retry timer. I had to account for si_window_start in the timer duration 5 years ago
Francisco Paisana 925ac862cb sib acquiring is failing for sib2 5 years ago
Francisco Paisana c29f08d8d5 refactored si acquisition procedure to use stack timers. Also created an interface that is going to be used for the task/timer handling 5 years ago
Xavier Arteaga f8165383f6 Neighbour SCell measurement test waits for final measurement before exiting-xx 5 years ago
Ismael Gomez 7cdd1c2ba4 Set FIND sampling rate before setting frequency 5 years ago
Francisco Paisana 4d80856359 fix bug in cell selection initiation 5 years ago
Francisco Paisana 22f51bb30b made cell select non-blocking using background threads 5 years ago
Ismael Gomez 21f01f6140 Do not print error when UL RNTI is not valid 5 years ago
Ismael Gomez 72e6fa40fc Fix multiple issues with DCI sizes when using CA. 5 years ago
Ismael Gomez be82e1f368
Fix concurrency bug in ZMQ during srate change (#954)
The bug was manifesting as buffer overflow in 20 MHz 2x2 CA
5 years ago
Ismael Gomez 4fb83ae26d Run configure_prach_params as a background task 5 years ago
Andre Puschmann 701e4aa6be fix bug causing segfault when UE wasn't initialized 5 years ago
Andre Puschmann dc4be1b856 fix overwriting dedicated_info_nas in connection_request_proc
this fixes an issue in the step() function of the connection_request_proc
in which the dedicated_info_nas message was passed to RRC without
checking if its actually valid or not, i.e. contains a message at all.

because this check was missing and the step() function could be called
multiple-times, the function would overwrite the dedicated_info_nas
in RRC, and therefore causing the connection setup complete to fail
5 years ago
Andre Puschmann f25b4f17f1 nas: log attach request cause 5 years ago
Andre Puschmann b15cd3fdaa add error handling to TTCN3 socket handlers 5 years ago
Andre Puschmann 42920d508f fix SS debug output 5 years ago
Andre Puschmann 327aa97cfd add macro for invalid RNTI 0x0 5 years ago
Andre Puschmann 265037c202 some tiny MAC code refactoring and typo fixing 5 years ago
Andre Puschmann 8d284f48bd cancel RA when receiving contention resolution in wrong state
this fixes a bug in which the contention resolution timer expired
and the RA proc entered the BACKOFF state.
In the same TTI, a MAC PDU with the contention reslution ID is received
and the already aborted RA procedure succeeds. Unfortunatly with the
wront c-rnti which has already been reset before. See log excerpt
below:

16:16:36.909687 [RRC ] [D] MEAS:  Processing measurement of 1 cells
16:16:36.909706 [RRC ] [I] MEAS:  New measurement serving cell: rsrp=-85.00 dBm.
16:16:36.909732 [MAC ] [I] [ 6283] RA:    ConRes: Contention Resolution Timer expired. Stopping PDCCH Search and going to Response Error
16:16:36.909749 [MAC ] [D] [ 6283] RA:    ConRes: Backoff wait interval 143
16:16:36.909771 [MAC ] [D] [ 6282] Delivering PDU=27 bytes to Dissassemble and Demux unit (Temporal C-RNTI)
16:16:36.909799 [MAC ] [D] [ 6283] Found Contention Resolution ID CE
16:16:36.909814 [MAC ] [D] [ 6283] RA:    Backof: MAC PDU Contains Contention Resolution ID CE
16:16:36.909826 [MAC ] [D] [ 6283] Msg3 buffer flushed
16:16:36.909858 [MAC ] [I] [ 6283] RA:    Backof: Random Access Complete.     c-rnti=0x0, ta=0
16:16:36.909871 [MAC ] [D] [ 6283] Saved MAC PDU with Temporal C-RNTI in buffer
5 years ago
Xavier Arteaga 6672f6df0f Minor aesthetic changes in intra measure class and changed scell_search test arguments 5 years ago
Xavier Arteaga 344016ef0a Refactored and commented SRSUE's Intra measure component 5 years ago
Xavier Arteaga 8f6dd184be SRSUE: neighbour cell measurement test defined 5 years ago
Xavier Arteaga f935916e7c SRSUE: fix srsue_rf_test 5 years ago
Francisco Paisana c76cdc6cea refactored the serving cell config procedure. there was one more state than it was needed. 5 years ago
Andre Puschmann cccabdaf4f removing unneeded install targets for static libs (reported by Filipe) 5 years ago
Andre Puschmann 627dac49b0 log message when ASN1 couldn't unpack DL message 5 years ago
Andre Puschmann c7343cf6d8 protect sf_buffer from overrun in receive_samples
this patch adds a buffer len paramter to the receive_samples() call
that protects the (also) provided buffer from overflowing.

currently each call to srslte_ue_sync_zerocopy() which then calls receive_samples()
relies on a buffer that is "big enough". But that buffer is sometimes
2 subframes, sometimes 3 or 5, sometimes has space for the maximum PRB size, sometimes
only for 6 PRBs (i.e. during cell search).

By extending the interface to pass the buffer size we can make sure that
only samples are received that actually fit inside the provided buffer.
5 years ago
Andre Puschmann 23bab1f207 fix potential segfault when overrunning char array
this fixed an issue when printing many neighbor cells because
the calculation of the remaining length can be negative
5 years ago
Andre Puschmann 0e337a01c3 fix SRB2 security handling in SS 5 years ago
Andre Puschmann 7c1b4c1f12 add support for IMEISV when requesting UE idendity 5 years ago
Ismael Gomez f2851b037e Fix concurrency issue in set_crnti() 5 years ago
Pau Espin Pedrol 2f3a125757 srsue: fix trailing whitespace 5 years ago
Pau Espin Pedrol 4949df257e Proper shutdown on SIGHUP
If a process exits and has a controlling terminal, everything under
it gets a SIGHUP by the kernel. That's the case for instance when
running a srsUE over ssh with some specific parameters. As a result,
when the ssh client is killed, SIGHUP is sent to srsUE, which will be
killed immediatelly without proper release, which means in turn that log
buffers are not flushed.
Let's do proper shutdown when SIGHUP is received so that everyone can
get log files.
5 years ago
Andre Puschmann ed179fd311 timers: rename value() to time_elapsed()
this seems to be better readable than value() since
we've sometimes confused it with the timeout value
5 years ago
Xavier Arteaga 4d3c28ff97 SRSUE: wait for valid RSRP measurement before adquiring SIBs during cell search 5 years ago
Andre Puschmann 9720449cbb fixing RRC measurement test after logmap refactor 5 years ago
Andre Puschmann 3d7598a4cb rewrite cell handling in TTCN3 PHY and SS 5 years ago
Andre Puschmann 2a46413121 during cell search don't configure found cell as serving cell
this fixes an issue in which, during cell search, the sync code
itself would set the serving cell whenever it found a new cell.

instead, only report the found cell to RRC and keep the sample
rate at 1.92 MHz. RRC may select a new serving cell and then tell
PHY to camp on it.
5 years ago
Andre Puschmann ca54f02b87 fix RRC measurement reporting when reportInterval is set to infinity 5 years ago
Andre Puschmann bbacc35e24 move configuration of default logger to main
this prevents the case where a layer requests a new log_filter
before the default logger has been configured
5 years ago
Xavier Arteaga 5302fcfa4d SRSUE: listen to paging only when RRC is IDLE 5 years ago
Xavier Arteaga fe199e6be2 SRSUE: Undo enable/disable RA procedure flag 5 years ago
Xavier Arteaga 66bb7d6f82 SRSUE: fix TTCN3 compile 5 years ago
Xavier Arteaga f8294fb9df SRSUE: RRC measurements refactor and more fixes 5 years ago
Ismael Gomez 52716f8716 Process HO complete in the background to avoid heap-after-use bug when PHY measurements are reported during a HO
rrc_meas refactor. Need to split commit

Fix typo

Temporal commit

Apply rx_gain_offset to neighbour cell measurements

srsLTE: modify TESTASSERT Macro to follow codeline

SRSUE: prevent RRC from having serving cell in neighbour list

SRSUE: DL HARQ does not need Time Aligment Timer. UL is disabled using PUCCH resources release

SRSUE: extend intra-frequency to CA SCell

SRSUE: fix confusing/ambiguous code in the RRC measurements and fix concurrency issue

SRSUE: remove RRC measurement report triggers when measurements are modified or HO succesful

SRSUE: fix compilation issues and Reest SIB indexes

Fixes sync using incorrect cell configuration when search cell does not find a correct cell

Small refactor to remove measurement report triggers always after removing measurement

SRSUE: Removed SIC PSS from UE

SRSUE: fix inter-frequency reestablishment and added more traces

SRSUE: Fix compilation issue
5 years ago
Francisco Paisana 296af7e297 fix setting up nas log before all log configuration 5 years ago
Francisco Paisana ea777d92e8 applied new logmap class to nas 5 years ago
Xavier Arteaga c080cb3395 SRSUE: expose correct synch error parameter 5 years ago
Ismael Gomez 17f9ff326b Expose in-sync and out-of-sync constants to ue.conf 5 years ago
Ismael Gomez cc7dfefa1a
Fix logic for UL HARQ retx causing Msg3 adaptive retx to be identified as a new transmission 5 years ago
Francisco Paisana 91d83fc20d different way to retrieve a proc future 5 years ago
Ismael Gomez 171e26ee68 Add checks more checks for UL grants 5 years ago
Francisco Paisana 5ae3afd2b8 created cbit_ref for unpacking const buffers 5 years ago
Francisco Paisana 5468189cd9 fix some variables' naming (e.g. x2_ap -> x2ap, e_rab -> erab) 5 years ago
Andre Puschmann b0bfc7956d use const& in metrics interface 5 years ago
Andre Puschmann 77522a6b69 add srsUE parameter to change netns before creating TUN in GW 5 years ago
yagoda 260648582e small formatting fix 5 years ago
yagoda fc1c506d1f refactoring TA command structure in UE 5 years ago