677 Commits (094d0198830623a64a8c07f1344a33963467a5d1)

Author SHA1 Message Date
Andre Puschmann 994c3127fa epc,nas: remove logging error when UE sends service request in ECM_STATE_CONNECTED
this causes errors to be logged without really failing anything.
UE might send this after a reestablishment.
3 years ago
Francisco f7efee9884 asn1: use typedefs for amf_ue_ngap_id, ran_ue_ngap_id, mme_ue_s1ap_id and enb_ue_s1ap_id and changed interface to access s1ap and ngap protocol_ies 3 years ago
Francisco Paisana 2d2a5bee03 asn1: update procotol_ie_single_container interface to use -> operator instead of .value to access container content 3 years ago
Francisco Paisana 6b181e7a94 asn1: move protocol_ie_single_container_s to asn1_utils, so it can be used by ngap, s1ap, and other layers 3 years ago
Pedro Alvarez 2d42766b2e epc,s1ap,nas: reduce the logging level of MAC failures on identity response and authentication response 3 years ago
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
Alejandro Leal Conejos ee0ec564ef Fixes coverity 373333 3 years ago
Alejandro Leal Conejos 4c518b8c82 Fixes coverity 373325 3 years ago
Pedro Alvarez b194bd8e63 Added comment and usage example to epc.conf.example to the request IMEI-SV option 3 years ago
Matan Perelman f4adf80263 Add option to request IMEISV 3 years ago
Pedro Alvarez 65a2b35f09 Fix not checking initialization of S11 in MME. Fixed typo. 3 years ago
Pedro Alvarez 061385cf72 Fix short MAC integrity check at MME 3 years ago
faluco dacf40f63e Delete move constructor and move assignment operator explictly for mac_pcap_base and s1ap_pcap classes.
Move emergency handlers header file into the support folder.

Refactored signal handling:
- Remove the dependency with the running static variable in the header file.
- Move implementations down to cc files.
- Allow specifying a new signal handler that will be used to stop the applications.
- Move signal handling files to support.
3 years ago
faluco 9075251627 Move the cleanup code from the signal handlers down to the new emergency handlers for the ue, epc and enb. 3 years ago
Alejandro Leal Conejos 1a64c6adad Enum fixes so clang 12 can build the repo 3 years ago
Pedro Alvarez 9230bc3b23 Demoted GTP-C logging of recieving downlink notification ack/failure when paging is not peding from warning to info 3 years ago
Fabian Eckermann dd8db1a929 Replaced inet_addr() with inet_pton. 3 years ago
David Rupprecht e8a464228d Cleaned string helpers 3 years ago
David Rupprecht bce6b5cc0f Added kdf common
Use kdf functions in 5G KDF

Moved EPS KDF function to new KDF structure
3 years ago
Pedro Alvarez 1b676aa406 Moved lib GTPU to its own folder 4 years ago
Andre Puschmann 3e9678d496 srsepc: send detach accept when receiving detach request for non-switchoff 4 years ago
Andre Puschmann acf098be92 epc,s1ap: remove use of rand() 4 years ago
Andre Puschmann 598594c51a all: bunch of pass by const& changes suggested by LGTM 4 years ago
AlaiaL 5fd4f421e9 Fixes coverity 366610 4 years ago
Jan a786d1dda0 Update security algorithms in epc.conf
Added EEA3 and EIA3, since they were missing from the description completely.
I also included EIA0 with a remark, since my understanding is that the epc supports it, but most UEs reject it because it must only be used for unauthenticated emergency calls.
4 years ago
Matan Perelman ee997a4e4e NAS: Add configuration for full and short network names. 4 years ago
Francisco ff3fc0826b asn1 fixes and improvements
- use const char* instead of std::string in enumerated<>::to_string() to avoid mallocs.
- Remove the use of "typedef", and use "using" keyword instead.
- Fix rrc_nr::setup_release_c<>::to_string() broken linkage.
4 years ago
Andre Puschmann 1a42e0b1d1 epc,nas: add error handling for all make_byte_buffer() calls
not handling the case where allocation was failing was causing a
segfault. It seems that when doing high rate UDP iperf and
disconnecting the UE causes the buffer pool to become empty due
to the PDU buffering. Thus, causing a crash when attaching the UE again.
4 years ago
Andre Puschmann 1a0891df51 all: check return value of make_byte_buffer() and handle them safely 4 years ago
Codebot 4523ee6087 rename srsLTE to srsRAN 4 years ago
Francisco d01f6806f0 fix regression - set correctly log sink in epc 4 years ago
Francisco 3e9f93eb8a refactor - remove old log_filter and logmap libraries from the codebase 4 years ago
Francisco 4969c98665 gtpu,bugfix - fixed formatting of addresses in GTPU 4 years ago
Francisco 5a1bf28fe1 optimization - minimization of number of std::string allocations for logging 4 years ago
Pedro Alvarez 492ea2a5a8 Addressing reviewers comments to #2290.
Removing unecessary \n for logs and changed log of PDCP info queue
 capacity to debug to avoid log spam.
Changed log level for unhandled S1AP messages from error to warning
 in EPC to avoid failing tests because of error message.
Changed usage of allocate_unique_buffer to make_unique_buffer()
4 years ago
faluco 6359a2d948 - Upgrade the gtpu class in lib dir to srslog.
- Propagate old log elimination through all the dependencies of gtpu.
4 years ago
Andre Puschmann 7ac0c3a8e0 epc,s1ap: don't log error when receiving UE capability info from eNB
this fixes a warning that we had in the epc.log because we don't
explicitly handle the UE capability info message received over S1AP
from the eNB.

Since we have a strict no-error policy in many PR tests, we can't log
an error here.
4 years ago
Francisco 798f1e57e6 fix byte buffer double free in EPC 4 years ago
Francisco 3265d940ec remove byte buffer pool cached member variables as they are unnecessary now. 4 years ago
Francisco 04ab4eefcd use new make_byte_buffer() helper method to create unique_byte_buffers 4 years ago
Francisco 8a9c326bcb remove old direct uses of byte_buffer_pool 4 years ago
Frederick Pelchat fa1f9594cb Fix Issue #615 Only first 8 bits of TAC passed by the ENB to the EPC 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
Ismael Gomez a6423442c2
Refactor NR RA files and fix header includes all over library (#2162)
* Refactor NR resource allocation classes. Use DCI instead of grant for dummy PDSCH UE/eNB test

* Minor refactors in NR workers and ue_dl

* Fix include issues

* fix compilation issues
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 8c9643af80 epc,gtpu: log info when IPv6 packet is sent
we've logged in warning mode bc we don't support IPv6 but its
causing unwanted noise in the epc log file.

it's quite normal that the Linux network stack sends IPv6 router
solicitation packets, etc. So we just ignore them and that's it.
4 years ago
Andre Puschmann 00f3f21081 last set of license header changes 4 years ago
Andre Puschmann 9608236ce4 fix srsepc_if_masq.sh 4 years ago