238 Commits (7d8c519865ec15fa80f910535ea43b1c1505d0cf)

Author SHA1 Message Date
Andre Puschmann f31a7d1d02 epc,nas: add handler for PDN connectivity request
COTS phones seem to send standalone PDN connectivity request
messages even after the initial attach was complete. We don't fully support
them in the EPC but instead of logging a warning we can just send
a reject at least to keep the logs clean.
3 years ago
Alejandro Leal Conejos f3be849d6b Fixes coverity 339793 3 years ago
Matan Perelman f4adf80263 Add option to request IMEISV 3 years ago
Andre Puschmann 598594c51a all: bunch of pass by const& changes suggested by LGTM 4 years ago
Matan Perelman ee997a4e4e NAS: Add configuration for full and short network names. 4 years ago
Codebot 4523ee6087 rename srsLTE to srsRAN 4 years ago
Francisco 3e9f93eb8a refactor - remove old log_filter and logmap libraries from the codebase 4 years ago
Francisco 3265d940ec remove byte buffer pool cached member variables as they are unnecessary now. 4 years ago
Francisco 8a9c326bcb remove old direct uses of byte_buffer_pool 4 years ago
faluco c18e35bc93
Upgrade loggers in srsepc (#2167)
* Started logger replacement in epc main.

* Replaced loggers in nas and s1ap.

* Replace loggers in nas statics.

* Replaced loggers in s1ap ctx mngmt.

* Replace loggers in s1ap erab mngmt.

* Replaced loggers in s1ap mngmt proc.

* Replaced loggers in s1ap nas transport.

* Replaced loggers in s1ap paging.

* Replaced loggers in mme.

* Replaced loggers in mme gtpc.

* Started removing logger injection in init functions and cleaned up argument passing to nas statics.

* Remove logger injection from mme and s1ap.

* Replaced loggers in the hss class.

* Replaced loggers in gtpc.

* Replaced loggers in GTPU and SPGW.

* Replaced loggers in MBMS.
4 years ago
Pedro Alvarez 0c20b7a455 Added support for S1AP modify bearer request support. This includes:
- Handle received E-RAB S1AP at s1ap.cc.
 - Added methods to rrc.cc, rrc_ue.cc and rrc_bearer_cfg.cc to handle erab modify request.
 - Made RLC add_bearer() function capable of re-creating the RLC entity.
 - Send RRC reconfiguration to the UE and reply to the EPC with S1AP
   modify bearer response.

This commit also adds support to srsEPC to send S1AP modify bearer request for
testing purposes.
4 years ago
Pedro Alvarez 7eebd71627 Added S1AP E-RAB release command/response handling to srsENB.
Added the ability to srsEPC to send the E-RAB release command.
4 years ago
Andre Puschmann 07d2bc4fe8 change license header to agnostic version with hint to root LICENSE file 4 years ago
Francisco Paisana 510959b50f update nr asn1 files, and asn1 tests 4 years ago
faluco 0b127fa8c7 - Fixed several errors that could sent uninitialized data through the network. 4 years ago
faluco 8d1705d6c6 - Fixed a leak in mme_gtpc where the singleton instance was not freed.
- Rewritten the class to be self manage its lifetime.
4 years ago
faluco b5b726ed48 - Fixed a memory leak in s1ap_paging. The static instance was not getting freed.
- Rewrite the singleton to self manage its lifetime.
4 years ago
Pedro Alvarez f85fe1c5ac Don't allow S1 setup with mis-matched TA codes between eNB and EPC. 4 years ago
faluco cfd3f51931
Import of srslog into srsepc and srsenb. (#1574)
* - Import of srslog into srsepc and srsenb.
* - Removed logger_file and logger_stdout files.
4 years ago
Pedro Alvarez 5746375b05 srsEPC: Deleted unsued bool in ue context removal interface 5 years ago
Pedro Alvarez 10050d2651 srsEPC: Fix sending release bearers request uncessarly on dettach request. 5 years ago
Francisco Paisana 0b701022a3 added ue nr mac 5 years ago
faluco 7ff251f112 - Fixed warnings caught by Clang 9.0.0 5 years ago
Francisco Paisana 38f848ecdf fix type name deducing for clang 5 years ago
Xavier Arteaga 77d5dedddc Fix LGTM warnings and recommendations 5 years ago
Xavier Arteaga e832769ae6 Updated copyright 5 years ago
Pedro Alvarez bd3598f774 Moved srsEPC to the new S1AP library. Deleted liblte_s1ap.cc and liblte_s1ap.h. 5 years ago
Andre Puschmann a8bbe551ac move thread class into srslte namespace to avoid ambiguity between std::thread 5 years ago
Merlin Chlosta c2e95b1e2a Reject TAU to force UE to reconnect 5 years ago
Pedro Alvarez 48f9df8615 Applied clang-format to all of the srsepc folder. 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
Andre Puschmann 5faa819dcd fixing uninitialized class members found by coverity 6 years ago
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. 6 years ago
Pedro Alvarez 20ee17088f Starting to add handling of attach request as a Uplink NAS transport message. 6 years ago
Andre Puschmann 64dd4c1fc4 fix issue when packing service reject fails and NAS uses initialized logger 6 years ago
Andre Puschmann 4b01a2e4a0 update copyright notice 6 years ago
Andre Puschmann 205db6f229 add missing license headers 6 years ago
Pedro Alvarez 1bac758a85 EPC now sends service reject to a UE that sends service request with bad integrity. 6 years ago
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.
6 years ago
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
6 years ago
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
6 years ago
Pedro Alvarez 3e9f10e20d Adding S11 initialization in MME and SPGW as unix sockets. 6 years ago
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. 6 years ago
Pedro Alvarez 6e500c5b86 Changed initilization of the NAS at the EPC, to make it easier to add new interfaces. 6 years ago
Pedro Alvarez add60c1288 Applied clang-format to the EPC. 6 years ago
Pedro Alvarez 179aeddfa2 Added encryption of security mode command and attach accept again. Attach is working with encryption. 6 years ago
Pedro Alvarez 997c24c099 Added config of cipher_algo and integ_algo initialization in NAS class. 6 years ago
Pedro Alvarez 5eacdd5418 Fixed compilation issues. Attach failing with COTS UE. 6 years ago
Pedro Alvarez 31a25067f5 Merging David Ruprecth's mme_msg_encryption branch into next. Not compiling. 6 years ago
David Rupprecht c480e57721 Config based security algorithm selection 6 years ago