Commit Graph

869 Commits

Author SHA1 Message Date
David Rupprecht eb3a83ac45 User Plane key in configuration interface 2019-04-11 21:38:01 +02:00
Andre Puschmann d8814a05f0 use stack-allocated messages for tx/rx'ing RRC messages (cherry-picked) 2019-03-19 11:31:10 +01:00
Pedro Alvarez aa3a2a3dba Fix compilation issue with GCC 8.x using complex numbers. 2019-03-13 13:18:17 +01:00
Andre Puschmann 3702a6660e fix compilation for gcc 4.x 2019-03-11 14:39:47 +01:00
Andre Puschmann 347f427c33 remove unused variables 2019-03-11 13:31:43 +01:00
Andre Puschmann 1cc6ae3c60 enable c++11 support 2019-03-11 13:31:43 +01:00
Andre Puschmann 0aef6f8d4a fix various uninitialized variables 2019-02-10 09:08:06 +01:00
Andre Puschmann c8f8c16d50
make EIA and EEA algorithms configurable (#323)
this patch allows to configure the EIA and EEA algorithms
the UE uses and announces during attach. They can
be specified as a comma-separated list.

The patch also removes a dedicated NAS config class and uses
the default nas_args_t type for this. There was a full
duplication of members before.

The patch also converts nas_args_t and usim_args_t into a class
with a default constructor that initialize all booleans.
2019-02-08 22:37:16 +01:00
Andre Puschmann 61f3a55bc5 initialize and reset avg_noise in phch_common 2019-01-22 21:49:37 +01:00
Xavier Arteaga c782ef2aa5 Solved unitialised values in UE (up to prach) and free 2019-01-22 12:23:57 +01:00
Andre Puschmann a436baed39 fix build string for builds without valid .git folder 2019-01-22 12:09:52 +01:00
Francisco Paisana 96303e4d58 Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 2019-01-21 16:41:25 +00:00
Francisco Paisana be06f260db fixed issues in the parsing of sibs 2019-01-21 16:39:00 +00:00
Andre Puschmann 631472760a fix signaling of mtch_cvar in phch_common
fixes possible race cond when more than one worker
is waiting for this cond and only one is ever woken up
2019-01-21 12:25:27 +01:00
Pedro Alvarez c5dad67a16 Adding catch to boost program options parser. 2019-01-18 12:38:56 +00:00
Francisco Paisana 0204db2e12 new asn1 rrc library 2019-01-17 17:43:13 +01:00
Andre Puschmann 646eb9c0e3
Merge pull request #313 from softwareradiosystems/next_mme_encryption
NAS MME encryption
2019-01-15 21:31:25 +01:00
Xavier Arteaga 07a68d7120 Enable UE's AGC for cell search (#314) 2019-01-15 21:26:23 +01:00
Andre Puschmann 8326299ec5 fix uninitialized variables 2019-01-15 16:34:41 +01:00
Andre Puschmann 15953d011e fix possible mem leak when parsing embms cmd line input 2019-01-15 16:34:04 +01:00
Andre Puschmann b6bb8cb125 fix possible buffer overflow when generating PRACH sequences 2019-01-15 16:12:52 +01:00
Andre Puschmann 2590ebd10b fix bugs reported by coverity 2019-01-15 15:59:38 +01:00
Pedro Alvarez c4544f2ede Send detach request correct security header in UE. 2019-01-15 10:30:01 +00:00
Pedro Alvarez b675e1fcc9 Ciphering EMM information message. Chainging detach_request security header in the UE to integrity and ciphered to avoid malformed message. 2019-01-14 17:00:16 +00:00
Andre Puschmann 3f63663a31 add mutex to csv metrics
this fixes and issue when closing the csv that left
half a new line in buffer
2019-01-10 12:35:45 +01:00
Andre Puschmann d34ecaaa5e adding RI to DL metrics 2019-01-10 12:35:38 +01:00
Andre Puschmann 192fcd726e Merge branch 'service_reject' into next 2018-12-17 12:35:57 +01:00
Andre Puschmann d14c65b7c2 move DL EARFCN list handling before RF init and fix formating 2018-12-17 12:31:33 +01:00
Joseph Giovatto af6de04806 added dl_earfcn_list to ue config
dl_earfcn_list = 2100,2200,3400
2018-12-17 12:14:49 +01:00
Andre Puschmann b2bcfca074 add service reject handler 2018-12-17 12:05:22 +01:00
Andre Puschmann 652d5c5942 fix typo 2018-12-14 16:57:58 +01:00
Andre Puschmann df7ab7ffe8 Merge branch 'master' into next 2018-12-14 16:54:46 +01:00
David Rupprecht a9032bb91a Fix problems when TA timer is set to infinity 2018-12-14 11:35:28 +01:00
Andre Puschmann 463b00d82d check sys_info_change flag in paging message 2018-12-13 10:54:51 +01:00
Ismael Gomez 8f541cf4e1 Merge branch 'next' into neon_windowed_tdec 2018-12-12 11:47:50 +01:00
yagoda 3762738bc1 adding windowed neon turbodecoder (can be further optimized) 2018-12-12 11:27:07 +01:00
Andre Puschmann 96f057d34b typo in phch_worker 2018-12-10 17:48:52 +01:00
Andre Puschmann d7ab2b8d66 add stop_timers function to RRC and call it in rrc::stop()
- this solves an issue with shutting down RRC when the UE
  just sent a connection request (and activated timer T300)
  and stop was called.
2018-12-10 17:48:52 +01:00
Andre Puschmann 2bc4d70199 reset TA before sending PRACH (fixes #285)
as suggested by Xavier in phch_recv.cc
2018-12-10 17:48:52 +01:00
Andre Puschmann d6196ba234 simplify RRC-NAS interface and only have msg as param (RRC selects LCID) 2018-12-10 17:48:52 +01:00
Andre Puschmann c9857fe4ad add handler for EMM status message 2018-12-10 17:48:52 +01:00
Andre Puschmann c3441046c9 simplify RLC buffer status query procedures
- add a simple and low-overhead has_data() method to check whether
  an RLC entity has data to transmit or not
- use this method for all calls that are actually not interested
  in the amount of data to send
- use the more expensive get_buffer_state() for all cases where
  the actual size of the buffer is of importance
2018-12-10 17:48:52 +01:00
Andre Puschmann 946a50adf0 in UL MAC mux, allow multiple RLC PDUs for each LCID 2018-12-10 17:48:52 +01:00
Andre Puschmann df40259c26 fix issue in PDCP when bearer ID for DRBs was not starting with 1 2018-12-10 16:58:08 +01:00
yagoda 77fb9c3ad5 Merge branch 'next' of https://github.com/softwareradiosystems/srsLTE into next 2018-12-04 17:49:30 +01:00
Andre Puschmann bba2987eb0 print LCID when adding DRB 2018-12-03 15:00:54 +01:00
rubund b801c3dd4e Fix some spelling errors detected by lintian (#271) 2018-12-03 10:36:15 +01:00
Pedro Alvarez 548808ecee Changing RRC key logging from debug to info. Small readability fix. 2018-11-30 21:42:43 +01:00
Pedro Alvarez 553f8260bb Fixing up logs and comments. 2018-11-30 21:42:43 +01:00
Pedro Alvarez e3d7ccd7e1 Changed the way UL NAS count is obtained to generate K_enb in the UE. Incrementing UL NAS count on integrity protected dettach request. 2018-11-30 21:42:43 +01:00
Pedro Alvarez dc727a192b Changing way UL NAS count is used to generate the K_enb. 2018-11-30 21:42:43 +01:00
Pedro Alvarez 645bd60d75 More debug prints 2018-11-30 21:42:43 +01:00
yagoda 1f9b392be1 Merge branch 'next' of https://github.com/softwareradiosystems/srsLTE into next 2018-11-20 17:07:12 +01:00
Andre Puschmann db910cb84b add CSV metrics for eNB 2018-11-20 12:15:04 +01:00
yagoda 438bbdf6c1 Merge branch 'next' of https://github.com/softwareradiosystems/srsLTE into next 2018-11-18 14:58:15 +01:00
Xavier Arteaga 56c01ba3ee UE RRC Config from ue.conf overwritten in rrc:init. Fixes #293. 2018-11-16 12:19:13 +01:00
Andre Puschmann 759ab6341d fix access to possibly uninitialized variable in GW when receiving corrupted pkt 2018-11-15 10:49:50 +01:00
Andre Puschmann f7bdfdc3a8 in NAS test, use real GW class in attach test 2018-11-15 10:48:47 +01:00
Andre Puschmann 0bd33bbae1 fix heap-overflow when extracting IPv6 address 2018-11-15 10:39:46 +01:00
Andre Puschmann 95ac067b6b send UL info transfer or SRB2 if it is established 2018-11-02 21:28:08 +01:00
Andre Puschmann f449067638 send detach request only integrity protected 2018-10-26 13:12:02 +02:00
Andre Puschmann ae23cfbac7 send detach request in connection request if RRC is not connected 2018-10-26 13:11:58 +02:00
Andre Puschmann 94188c1d7a set TMSI status field during GUTI attach 2018-10-26 13:11:47 +02:00
Andre Puschmann 0571720105 make LCID for UL_DCCH configurable 2018-10-26 13:11:10 +02:00
Andre Puschmann 1ed225a10b add getter for IPv4 and IPv6 addresses 2018-10-26 13:09:03 +02:00
Pedro Alvarez 9681ead26f Changed find ipv6 address loop to be more similar to 'man 7 netlink'. 2018-10-26 11:42:27 +02:00
Pedro Alvarez 5c29dba741 Changed Interface between NAS and GW to avoid the GW start function being called twice in IPv4v6 mode. 2018-10-26 11:42:27 +02:00
Pedro Alvarez 15cd8fc3b6 Fixed default conf back to original values. 2018-10-26 11:42:27 +02:00
Pedro Alvarez 6b5aec5735 Added intial support for IPv4v6. Ping and ping6 seem to work (simultaneously). 2018-10-26 11:42:27 +02:00
Pedro Alvarez 685898b323 Starting to add IPv4v6 support to the UE. Added function to get auto-generated link-local IPv6 address. 2018-10-26 11:42:27 +02:00
Pedro Alvarez 1c0ddc717b Starting to change NAS attach accept to support IPv4v6 2018-10-26 11:42:27 +02:00
Pedro Alvarez 3528e0bb39 Fixed GW to handle IPv6 packets as well. Ping6 seems to work. 2018-10-26 11:42:27 +02:00
Pedro Alvarez 2e800437e3 UE seems to attach correctly and obtain the correct IPv6 addresses. GW is still discarding packets that are not IPv4. 2018-10-26 11:42:27 +02:00
Pedro Alvarez ac1c300126 Adding the ability to set the interface local link IPv6 address. 2018-10-26 11:42:27 +02:00
Pedro Alvarez 25108e2e2b Added configuration options to UE for IPv6 PDN. Starting to send PDN connectivity requesting IPv6. 2018-10-26 11:42:27 +02:00
Andre Puschmann 3ebf4792de fix missing length reset in NAS test 2018-10-10 16:01:51 +02:00
Francisco Paisana feccce5a01 fixed the deadlock issue 2018-10-09 21:16:10 +02:00
Andre Puschmann 02d7747aaf fix typo 2018-10-09 21:15:01 +02:00
Andre Puschmann 273087ce00 use blocking pool allocate for all NAS/RRC allocs and first GW alloc 2018-10-05 14:50:49 +02:00
Pedro Alvarez 3cddad79cc Adding ability to configure names of TUN interfaces. (#277)
* added config option for tun dev names vs fixed names added config option for M1-U interface addr

* Added options to sgi_mb tun name.

* Added some comments to mbms.conf.example

* Added some comments to example configs to explain the new values.
2018-10-05 11:12:31 +02:00
Xavier Arteaga 27df357a66 Fixes #273 2018-10-04 10:44:41 +02:00
Andre Puschmann ea35cc9b5e fix typo in config files 2018-10-02 10:52:25 +02:00
Andre Puschmann 0380c83175 remove RF device calibration settings from UE/eNB config
- this remove RF calibration parameters that were an extra
  section in the eNB/UE config but were hardly used (only old bladeRF)
- a better way to pass those parameter would be through the
  device args in the normal rf config section
2018-10-01 21:59:07 +02:00
Andre Puschmann 26ed7fe2ad
do not delete LCG config during reset of BSR procedure (#269)
- this caused an issue after HO when the LCGs where gone
  and hence no BSR was provided for DRB until RRC reestablishment
2018-09-28 21:05:48 +02:00
yagoda 824dafddc6 Merge branch 'next' of https://github.com/softwareradiosystems/srsLTE into next 2018-09-27 14:20:12 +02:00
Ismael Gomez 5cfdc81522 Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 2018-09-26 14:30:45 +02:00
Ismael Gomez cfb3a43aed Lower priority of workers 2018-09-26 14:30:39 +02:00
Andre Puschmann 4a68d0777b fix NAS tests
- Modifications needed after only accepting NAS messages whose integrity check passes
- Turns off loading a (possibly) existing NAS ctxt
- Modifies some test vectors such that they have a zero MAC and counter 0
2018-09-26 10:16:11 +02:00
Andre Puschmann 8697640945 drop all integrity protected NAS messages whose check is failing
- also enables integrity check for messages that are only integrity
  protected but not ciphered
2018-09-26 10:16:11 +02:00
Andre Puschmann 07e42c1964 Merge branch 'rlc_am_subclass' into next 2018-09-25 16:08:29 +02:00
Andre Puschmann 10a43f04ba Merge branch 'master' into next 2018-09-25 15:10:48 +02:00
Joseph Giovatto dc3e88079a moved earb_info from parent to be unique per ue to avoid overwrites (#234)
consult integrity check result before proceeding
2018-09-25 14:18:24 +02:00
Andre Puschmann 6764fdb964 fix member initialization in phch* 2018-09-25 10:45:15 +02:00
Ismael Gomez 6f0c554445 TA estimate correction factor calibrated for all bandwidths 2018-09-24 15:39:14 +02:00
Ismael Gomez 2e53478a3b Allow time_adv_nsamples parameter to be negative 2018-09-24 11:26:30 +02:00
Andre Puschmann d981f129e0 Merge branch 'master' into next 2018-09-20 12:54:05 +02:00
Andre Puschmann 1fab8e6702 fix reset of NAS counters after receiving security mode command
- reported by cpetersgit
- reset only needed after receiving initial security mode command
2018-09-20 12:16:44 +02:00
Andre Puschmann f458d58527 fixed handling of UE indentity request 2018-09-20 11:55:42 +02:00
Joseph Giovatto 2dddfa2aac added ability to track tput per bearer (#233)
added mac_metrics for ul/dl harq retex counts
2018-09-20 11:22:22 +02:00
Ismael Gomez dabfbfb75a Fixes #250 2018-09-19 17:37:23 +02:00
Andre Puschmann 823d9e75f1 Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 2018-09-07 10:38:59 +02:00
Andre Puschmann 883eb49043
Merge pull request #254 from softwareradiosystems/tx_mutex_fix
Change TX mutex to semaphores (mutex implementation was violating loc…
2018-09-06 18:00:57 +02:00
Ismael Gomez 6a791f1416 Change TX mutex to semaphores (mutex implementation was violating lock ownership requirement) 2018-09-06 15:22:37 +02:00
Andre Puschmann 855a55d4d8 fix issue with assigning imsi in pcsc 2018-09-05 13:39:13 +02:00
Andre Puschmann d19eb28a16 fix various variable initializations that gcc-4.8 complained about 2018-09-05 12:34:40 +02:00
Ismael Gomez bc9d342959
New optimization on the PHY for both UE and eNodeB (#251)
* New parallel Turbodecoder implementation in SSE/AVX 16-bit and 8-bit

* Optimised UL Interleaver

* Include TB CRC calculation in FEC encoder

* New threading priorities
2018-09-04 17:51:35 +02:00
Ismael Gomez 695990f297 Fix UE not reconnecting after paging (workaround) 2018-09-04 17:50:14 +02:00
Ismael Gomez e43582c0d0 Trigger measurement only for cells in MeasObj not the discovered ones 2018-08-22 11:00:01 +02:00
Ismael Gomez 327002a6cb Fix NCC=1 HO in second round 2018-08-22 10:57:26 +02:00
Ismael Gomez aaeec591b6 Fix race condition in phy recv 2018-08-14 19:50:03 +02:00
Ismael Gomez e1870963c7 Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 2018-08-10 22:22:07 +02:00
Ismael Gomez 44dcbfc8da Instruct PHY to measure objects instead of measId (duplicate objects) 2018-08-10 22:21:54 +02:00
Ismael Gomez 9cd725de21 Trigger measurement only for cells in MeasObj not the discovered ones 2018-08-10 22:21:07 +02:00
Andre Puschmann e2470685a5 send attach_request and detach_accept ciphered 2018-08-08 13:03:15 +02:00
Andre Puschmann 06c9a3f07f add network initiated detach 2018-08-07 15:32:40 +02:00
Andre Puschmann 9f838dc65c bzero DL-DCCH object before unpacking 2018-08-07 10:51:56 +02:00
Andre Puschmann 527261e35b fix drb release 2018-08-07 10:20:52 +02:00
Andre Puschmann 32ed7d9f3a print error when DRB couldn't be released 2018-08-07 09:40:52 +02:00
Andre Puschmann 40aef76745 fix logging when removing DRB 2018-08-06 21:09:36 +02:00
Andre Puschmann 3b8371d090 add detach support (for switch off) 2018-08-06 11:10:12 +02:00
Eric Schreiber 470953bf9c Change the calculation of UE group A random access preamble selection to choose a random number from [0 nof_groupA_preambles) rather than incrementing on the preambleTransmissionCounter. (#200) 2018-07-26 13:16:34 +02:00
Andre Puschmann ee5b055829 rename pdcp function for GW to is_lcid_enabled() 2018-07-25 15:09:19 +02:00
Andre Puschmann 4da8bf26f8 use non-blocking PDCP write in GW 2018-07-24 15:50:14 +02:00
Andre Puschmann eb30d86d44 process RRC PDUs in RRC thread 2018-07-23 17:49:26 +02:00
Andre Puschmann edfc9df77d Merge branch 'master' into next 2018-07-17 17:50:38 +02:00
Andre Puschmann a604fbcc66 fix double RRC init bug in UE 2018-07-17 12:17:00 +02:00
Andre Puschmann ccf58a63ce reduce default log-level to warning 2018-07-17 09:43:30 +02:00
Andre Puschmann f6f47f0320 print srsLTE version name if no git details are found 2018-07-17 09:43:05 +02:00
Ismael Gomez 9e0d7281f5 Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 2018-07-16 15:17:07 +02:00
Ismael Gomez fda4c39590 pdsch_ue RSRP in dBm. Fix default rx_gain_offset in ue.conf differs from code 2018-07-16 15:16:52 +02:00
Andre Puschmann 10469cd3a0 Merge branch 'master' of github.com:srsLTE/srsLTE 2018-07-16 10:12:48 +02:00
Andre Puschmann ac94b531ae only print build-info when string is filled 2018-07-16 10:12:24 +02:00
Andre Puschmann be3b2fbc08
Merge pull request #239 from softwareradiosystems/epc_stacktrace
Epc stacktrace
2018-07-13 14:28:13 +02:00
Andre Puschmann bd59d72b9f set RRC args by-value 2018-07-13 13:16:56 +02:00
Pedro Alvarez 597cf18b9d Changing common/debug.h to crash_handler.h 2018-07-13 11:57:15 +01:00
Ismael Gomez c012a6ea83 Mutex more operations in worker to fix segfault when HO. Protect pdsch/pusch from regenerating sequence 2018-07-13 12:48:57 +02:00
Ismael Gomez 2d5cdc4f35 Add log to pool deallocate 2018-07-12 18:13:27 +02:00
Ismael Gomez 5474f6d55f Add log to pool deallocate 2018-07-12 18:13:19 +02:00
Andre Puschmann 1f7e918790 use blocking pool_allocate for all NAS messages 2018-07-12 17:52:53 +02:00
Pedro Alvarez c3ef88e112 Fixing conflicts with next. 2018-07-12 15:43:27 +01:00
Ismael Gomez 229569cd76 Fix Aperiodic CQI retx when TBS=0 2018-07-12 11:17:09 +02:00
Ismael Gomez 1a7e746a06 Minor cleanup 2018-07-11 15:43:11 +02:00
Ismael Gomez 9690125882 Minor cleanup 2018-07-11 15:42:51 +02:00
Ismael Gomez 75e8df2e9f Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 2018-07-11 15:33:22 +02:00
Ismael Gomez 653d126319 Merge branch 'tx_enabled_issue' into next 2018-07-11 15:32:41 +02:00
Ismael Gomez 9231bd0fe0 Fix Aperiodic CQI retx when TBS=0 2018-07-11 14:49:39 +02:00
Andre Puschmann 55b3b61ec1 Merge branch 'master' into next 2018-07-11 13:00:47 +02:00
Ismael Gomez bd5c1fd83a deallocate dedicatedInfoNAS in rrc 2018-07-11 12:56:14 +02:00
Andre Puschmann 77827691f5
Merge pull request #236 from softwareradiosystems/ciphered_auth_resp
add support for ciphered authentication response
2018-07-11 12:35:12 +02:00
Ismael Gomez 074db8478c deallocate dedicatedInfoNAS in rrc 2018-07-10 19:52:46 +02:00