Commit Graph

572 Commits

Author SHA1 Message Date
Pedro Alvarez 48f9df8615 Applied clang-format to all of the srsepc folder. 2019-10-18 15:40:40 +02:00
Andre Puschmann a2ab043c0d fix memleaks and uninitialized vars found by cppcheck 2019-09-20 10:55:29 +02:00
Andre Puschmann 4ac5448ad7 fix formatting in NAS 2019-09-16 21:39:15 +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
David Rupprecht bb97d7d199 fixing key naming 2019-09-10 13:46:21 +02:00
David Rupprecht 50332089ce Add EEA3 and EIA3 support for UE/enodeb and MME 2019-09-10 13:46:21 +02:00
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
2019-09-04 15:32:29 +02:00
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
2019-09-04 15:28:09 +02:00
Digicrat 86ec3101e0 Fix bug wherein blank lines or trailing newlines causes parsing of user_db.csv to fail. 2019-08-05 11:16:41 +02:00
Pedro Alvarez 494be243c0 Changed security direction to use an enum. 2019-07-30 15:01:50 +02:00
Andre Puschmann 5faa819dcd fixing uninitialized class members found by coverity 2019-07-08 11:12:46 +01:00
Pedro Alvarez de4d459e5f Fix issue of IMSI context already present when receiving a GUTI attach with bad integrity. This could cause a sigpipe in the EPC when the eNB was re-started. 2019-07-03 17:24:40 +02:00
Pedro Alvarez b617f76bdc S1AP Debug message. 2019-07-03 17:24:40 +02:00
Pedro Alvarez b97d1191f4 Added more debug info at eNB GTP-U. Changed the pdcp_entity to follow the standard more strictly for RLC AM DRBs. 2019-06-27 17:09:52 +02:00
Pedro Alvarez 609e5cce2c Initializing attach request in EPC NAS. 2019-06-24 21:27:08 +02:00
Pedro Alvarez 2ed60412b9 Removing debug printfs. 2019-06-24 21:27:08 +02:00
Pedro Alvarez 36bd20d308 Making sure that the security algorithms are kept when the NAS context is reset. Attach request after a service reject seems to work now (with COTS UE). 2019-06-24 21:27:08 +02:00
Pedro Alvarez 50506ffa26 Changed NAS initialization from init function to constructor. Continuing to add the logic to handle attach request as a Uplink NAS message. Added debug log to s1ap::send_downling_nas_message. 2019-06-24 21:27:08 +02:00
Pedro Alvarez 20ee17088f Starting to add handling of attach request as a Uplink NAS transport message. 2019-06-24 21:27:08 +02:00
Pedro Alvarez d67d18cc6b Removing deplicated error codes. 2019-06-07 13:51:56 +02:00
Andre Puschmann e47010130f extend thread class to set unique thread name in ctor
this will also extend all classes that use srslte::thread
to specify the name of the thread in the ctor as well
as to set the name of the worker threads in the thread pool
the thread name will be displayed in gdb.
2019-06-03 15:03:20 +02:00
Francisco Paisana 0e3baa0f2f Renamed the reset() method of byte_buffer_t to clear() 2019-05-16 12:35:01 +02:00
Andre Puschmann 7e5e2b142e fix uninitialized members in MME NAS 2019-05-03 10:15:37 +02:00
Pedro Alvarez f303167206 Fix GTP-C socket initialization to remove compiler warnings. 2019-05-02 11:41:59 +02:00
Andre Puschmann 4c16a1f719 fix uninitialized struct 2019-04-30 13:59:06 +02:00
Andre Puschmann 64dd4c1fc4 fix issue when packing service reject fails and NAS uses initialized logger 2019-04-30 13:59:06 +02:00
Andre Puschmann 4b01a2e4a0 update copyright notice 2019-04-29 09:20:02 +02:00
Andre Puschmann 205db6f229 add missing license headers 2019-04-26 21:20:12 +02:00
Ismael Gomez 7780b1aba5 add tdd/ca support 2019-04-25 20:57:58 +02:00
Pedro Alvarez 64d50040e7 Changed some paging logs to debug and removed noisy print to console in the EPC 2019-04-15 14:52:09 +01:00
Pedro Alvarez 49577b6b5f Making sure that packet queued in the SPGW is freed when queue_downlink_packet enconters errors. Reverse the order of sending paging and queueing packet so that paging_pending is properly set to true. 2019-04-15 12:52:14 +02:00
Pedro Alvarez 7cdc012bb2 Printing fixes in the EPC for ARM 2019-04-12 20:08:25 +02:00
Pedro Alvarez 1bac758a85 EPC now sends service reject to a UE that sends service request with bad integrity. 2019-04-12 16:24:57 +02:00
David Rupprecht dabf586316 ISMI to IMSI typo 2019-04-11 21:38:01 +02:00
Pedro Alvarez d7d461fb8c Change user_db.csv.example to consider static IPs. Changed warning print in HSS. 2019-04-11 15:55:46 +02:00
Joseph Giovatto 056bfef996 use inet_pton to vefify ip address validity 2019-04-11 15:55:46 +02:00
Joseph Giovatto fa99aa590e added support for optional ue static ip address (rebase #225) 2019-04-11 15:55:46 +02:00
Andre Puschmann 41c85adaf2 handle EPC config file errors gracefully 2019-04-09 17:28:09 +02:00
Pedro Alvarez 3ad19f21b6 Adding per UE authentication algorithm choice to the HSS and users_db.csv. 2019-04-09 17:17:02 +02:00
Pedro Alvarez ca603810ce Adding Downlink data notification and paging functionality to the EPC.
This entails:

  * Adding S1AP paging messaging to the MME.
  * Adding the Downlink Data Notification, Donlink Data Notification Acknoledgment, and Downlink Data Notification Failure Messages.
  * Adding the logic at the GTP-U to detect that Downlink Data notification needs to be sent.
  * Proper handling of the new GTP-C messages at the MME GTPC and SPGW GTPC classes
  * Add queuing mechanisms at the GTP-U while waiting for paging response. Queue is flushed when paging fails (timeout or other).
  * Make sure eNB's SCTP information is properly stored.
  * Make sure UE's GUTI information is properly stored.
2019-04-09 16:59:44 +02:00
Pedro Alvarez 1db959c661 Added NAS timer functionality to the EPC. This entails:
* Adding timer creation at NAS using timerfd_create
  * Adding the ability to add and remove the timer file descriptor to the MME main select loop
  * Adding the ability to the MME for the NAS to check if a timer is running
  * Adding the timer expiry handling functionality at the MME
2019-04-08 13:05:54 +02:00
Pedro Alvarez 9463b95dc1 Remove unused mutex in the SPGW. 2019-04-03 09:52:18 +02:00
Pedro Alvarez 3933b269d7 Added GTP-C message passing between MME and SPGW using UNIX sockets.
* Added S11 sockets to SPGW select and MME select
  * Added send_s11_pdu message to SPGW and MME
  * Remove pointer for replies in handle_s11_pdu
2019-04-03 09:52:18 +02:00
Pedro Alvarez 3e9f10e20d Adding S11 initialization in MME and SPGW as unix sockets. 2019-04-03 09:52:18 +02:00
Pedro Alvarez 5f7b6ba79e Split GTP-C and GTP-U functionality into seperate classes in the SPGW. Added GTP-U specific logging in the EPC. Added handle_s11_pdu function to both the MME GTP-C entity and the SPGW GTP-C entity. 2019-04-02 09:17:00 +02:00
Pedro Alvarez 6e500c5b86 Changed initilization of the NAS at the EPC, to make it easier to add new interfaces. 2019-03-20 14:00:02 +01:00
Pedro Alvarez add60c1288 Applied clang-format to the EPC. 2019-03-20 14:00:02 +01:00
Andre Puschmann a436baed39 fix build string for builds without valid .git folder 2019-01-22 12:09:52 +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