Commit Graph

57 Commits

Author SHA1 Message Date
Andre Puschmann f999e256f9 add error handling for RRC msg packing in eNB 2020-02-03 16:26:15 +01:00
Xavier Arteaga 5dcb6b5960 SRSENB: Set default PRACH sequence root index in SIB2 2020-01-28 11:22:50 +01:00
Francisco Paisana 5ae3afd2b8 created cbit_ref for unpacking const buffers 2020-01-23 12:22:19 +00:00
Francisco Paisana 5468189cd9 fix some variables' naming (e.g. x2_ap -> x2ap, e_rab -> erab) 2020-01-21 00:58:19 +00:00
Francisco Paisana 2a83eee0ee fix security key setup 2020-01-21 00:58:19 +00:00
Francisco Paisana 83758e4f55 fix integrity/ciphering bit setting 2020-01-21 00:58:19 +00:00
Francisco Paisana ee24b59924 converted s1ap to new s1ap asn1 lib. Cleaned up bitstring packing/unpacking and bitstring types 2020-01-21 00:58:19 +00:00
Francisco Paisana b6c53d786b updated s1ap rrc interface with new asn1 lib types 2020-01-21 00:58:19 +00:00
Andre Puschmann fef6893ce4 make user activity handling independent of system time
this commit removes the getsystime() call from the activity handling.
it uses a single timer per UE to handle its activity.

three different timer values exist. one for the Msg3 reception. This
is like before and is quite low to quickly remove fake UEs from the
RRC. The second is a generic value (set to 1s for now) that covers
the entire UE configuration phase where multiple messages are sent
back and forth until the UE is fully set up and the default
bearer runs. From there on, the UE inactivity timer is used which
may be much bigger than 1s.
2020-01-14 20:52:09 +01:00
Francisco Paisana f280720564 this fix was detected by Syed in the mailing list 2020-01-08 13:45:26 +01:00
Andre Puschmann 75672324b9 fix RRC connection reconfig for new bearer
this fixes the packing of a RRC connection reconfig after creating
a new ERAB

it also adds a PDCP config factory based on the received request
2019-12-18 15:27:42 +01:00
yagoda 845c0fc2c0 fixing lcid issue with eMBMS, adding MRNTI user to stdout metrics 2019-12-18 12:18:58 +01:00
Andre Puschmann 476f970ee1 replace FIXME with TODO 2019-12-18 11:25:56 +01:00
Andre Puschmann c7ee887170 add factory function for creating PDCP config 2019-12-16 14:06:26 +01:00
Andre Puschmann 8a064cd3a6 pass msg_type from caller when logging RRC message
before the type of some message wasn't displayed correctly,
like SIBs, for example because the logger didn't
know the filed to retrieve the type string
2019-12-16 12:49:07 +01:00
Andre Puschmann 60d07f1656 assign msg-type to temp variable before logging ASN1 message in RRC 2019-12-16 12:49:07 +01:00
Francisco Paisana d270518d69 updated rrc to new srsasn1 version 2019-12-11 19:58:20 +00:00
Francisco Paisana a18a7e307e moved all the parsing of the libconfig files to separate functions that can be called from individual tests. Created several stack layer dummy classes for testing. Extended the rrc_mobility test to check correctness of RRC HOPreparation struct 2019-12-06 10:21:41 +00:00
Francisco Paisana 524c80a804 added handling of ho command 2019-12-05 17:36:15 +00:00
Pedro Alvarez e68956bcf6 Adding discard timer timeout to PDCP config. 2019-12-04 18:21:14 +01:00
Francisco Paisana 0f01b0acc2 clean paging_opportunity function 2019-11-20 15:52:21 +00:00
Francisco Paisana 77f63f7bcd removed gtpu mutex 2019-11-20 15:52:21 +00:00
Francisco Paisana 76673d2d40 cleaned up socket util methods, and made the S1AP non-blocking. 2019-11-15 17:57:36 +00:00
Andre Puschmann 30aac5a89a fix wrong c-type cast accessing UE database and uninit mem 2019-11-15 17:20:51 +01:00
Aleksander Morgado ed6044eb54 enb,rrc: always print full RRC message contents
Do not limit them to 1024 chars.
2019-11-15 16:34:10 +01:00
Francisco Paisana 177e880293 removed extra threads from enb rrc 2019-11-11 15:20:10 +00:00
Francisco Paisana ff62ae6ad0 created the method chain in RRC to receive and handle the response to a S1AP HORequired 2019-11-10 22:06:31 +00:00
Francisco Paisana 50ed2ccfec added the handling of ho preparation failure and an ue class to s1ap 2019-11-10 22:06:31 +00:00
Francisco Paisana 57cd40ca31 added an ho required message send from SeNB to MME 2019-11-10 22:06:31 +00:00
Francisco Paisana 690a9850e7 cleaned up some old patterns and run clang-format in RRC and scheduler 2019-11-08 13:59:38 +00:00
Andre Puschmann 2f00fd62ec fix PDCP config in TTCN3 SS 2019-11-07 14:12:08 +01:00
Pedro Alvarez b7fdcaabc5 Starting to add reordering timers at PDCP NR entity. Timeout seems to be triggered correctly and pass the SDUs to the upper layers when it expires. First tests passing. 2019-11-07 14:12:08 +01:00
Francisco Paisana b6b1dd1814 extended mobility test 2019-11-01 15:48:47 +00:00
Francisco Paisana 1524e28c3a finished the function to compute diffs between cells/measObjs of two var_meas_cfg objects. Added tests for this. Now the update of a UE's var_meas_cfg is made via a shared pointer. 2019-11-01 15:48:47 +00:00
Francisco Paisana 22f2781f28 fixed bug associated with the initialization of srsenb::rrc::ue. Disabled std::map::operator[] as a result 2019-10-30 14:27:37 +01:00
Francisco Paisana 7e62d6d1f9 added parser for rrc_cnfg section of rr.conf file, and dummy rrc_mobility class 2019-10-29 15:27:09 +00:00
Francisco Paisana d79e49ed4c moved the BC scheduling to a separate class/file 2019-10-23 18:06:32 +01:00
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
2019-10-23 11:09:39 -05:00
Xavier Arteaga b3e8c4ae6a SRSENB: Schedule RI reporting 2019-09-30 15:15:18 +02:00
Ismael Gomez 6bb0790cf1
Fix coverty issues (#652) 2019-09-13 15:06:20 +02:00
Pedro Alvarez 004db4a067 Applied clang-format to zuc_support PR. 2019-09-10 13:46:21 +02:00
Pedro Alvarez 1ae8ccda8c Added EIA3 and EEA3 to default UE capabilities to srsUE. Added parsers for EEA3/EIA3 config options in srsENB and srsEPC 2019-09-10 13:46:21 +02:00
Andre Puschmann 49279c89d8 send DL-DCCH on SRB2 after it has been established 2019-09-09 17:16:22 +02:00
Harald Welte 2e426948fe [ENB] Add CFSB support
This commit introduces CSFB (circuit switched fall-back) capabilities to
srsLTE.  Actually, all the eNB has to do is to send a
RrcConnectionRelease with the RedirectedCarrierInfo IE.

The MME triggers this by the S1AP CS Fallback Indicator IE, which may
be present either in the Initial Context Setup Requst or in the
UE Context Modification Request.

As srsLTE has no support for the UE Context Modification Request at all
yet (!), basic support for this message is introduced in this patch.

Both Mobile Originated and Mobile Terminated CSFB with a coupel of
different UE models have been verified using this patch in a setup
consisting of srsENB attached to an undisclosed EPC connected via SGsAP
to a complete  Osmocom 2G network.

Closes: #358
Closes: #363
2019-09-09 16:59:00 +02:00
Francisco Paisana 116dc0a57b fixed group extensions, removed extra presence flag for copy_ptr<T> types as it was just a source of bugs. 2019-09-02 20:21:54 +02:00
Pedro Alvarez 6efa944b5e Removed srslte prefix from pdcp_config_t 2019-07-30 15:01:50 +02:00
Pedro Alvarez 494be243c0 Changed security direction to use an enum. 2019-07-30 15:01:50 +02:00
Pedro Alvarez 964db869a6 Fix mistake in configuring SRB1's PDCP. 2019-07-30 15:01:50 +02:00
Pedro Alvarez d3b6828082 Changed PDCP configuration to explicitly have tx and rx direction. Decrypt on PDCP NR seems fine. 2019-07-30 15:01:50 +02:00
Pedro Alvarez 73e30743d1 Added enum to PDCP config to replace two bools. 2019-07-30 15:01:50 +02:00