Commit Graph

673 Commits

Author SHA1 Message Date
Pedro Alvarez 2d42766b2e epc,s1ap,nas: reduce the logging level of MAC failures on identity response and authentication response 2021-12-02 15:20:09 +00:00
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.
2021-11-26 14:51:14 +01:00
Alejandro Leal Conejos f3be849d6b Fixes coverity 339793 2021-10-27 19:47:45 +02:00
Alejandro Leal Conejos ee0ec564ef Fixes coverity 373333 2021-10-26 21:09:44 +02:00
Alejandro Leal Conejos 4c518b8c82 Fixes coverity 373325 2021-10-26 21:09:44 +02:00
Pedro Alvarez b194bd8e63 Added comment and usage example to epc.conf.example to the request IMEI-SV option 2021-10-26 15:46:21 +02:00
Matan Perelman f4adf80263 Add option to request IMEISV 2021-10-26 15:46:21 +02:00
Pedro Alvarez 65a2b35f09 Fix not checking initialization of S11 in MME. Fixed typo. 2021-10-21 14:50:44 +01:00
Pedro Alvarez 061385cf72 Fix short MAC integrity check at MME 2021-10-18 11:48:53 +01:00
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.
2021-10-15 15:05:37 +02:00
faluco 9075251627 Move the cleanup code from the signal handlers down to the new emergency handlers for the ue, epc and enb. 2021-10-15 15:05:37 +02:00
Alejandro Leal Conejos 1a64c6adad Enum fixes so clang 12 can build the repo 2021-10-14 08:48:04 +02:00
Pedro Alvarez 9230bc3b23 Demoted GTP-C logging of recieving downlink notification ack/failure when paging is not peding from warning to info 2021-09-24 17:41:49 +02:00
Fabian Eckermann dd8db1a929 Replaced inet_addr() with inet_pton. 2021-09-21 11:59:40 +02:00
David Rupprecht e8a464228d Cleaned string helpers 2021-09-16 15:24:32 +02:00
David Rupprecht bce6b5cc0f Added kdf common
Use kdf functions in 5G KDF

Moved EPS KDF function to new KDF structure
2021-09-07 11:06:56 +02:00
Pedro Alvarez 1b676aa406 Moved lib GTPU to its own folder 2021-06-30 18:19:20 +01:00
Andre Puschmann 3e9678d496 srsepc: send detach accept when receiving detach request for non-switchoff 2021-06-23 11:17:58 +02:00
Andre Puschmann acf098be92 epc,s1ap: remove use of rand() 2021-05-03 12:42:24 +02:00
Andre Puschmann 598594c51a all: bunch of pass by const& changes suggested by LGTM 2021-04-29 10:00:09 +02:00
AlaiaL 5fd4f421e9 Fixes coverity 366610 2021-04-23 21:22:06 +02:00
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.
2021-04-23 20:31:36 +02:00
Matan Perelman ee997a4e4e NAS: Add configuration for full and short network names. 2021-04-23 20:31:36 +02:00
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.
2021-04-22 10:21:08 +01:00
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.
2021-04-08 18:20:44 +02:00
Andre Puschmann 1a0891df51 all: check return value of make_byte_buffer() and handle them safely 2021-03-23 14:31:15 +01:00
Codebot 4523ee6087 rename srsLTE to srsRAN 2021-03-21 21:47:01 +01:00
Francisco d01f6806f0 fix regression - set correctly log sink in epc 2021-03-11 20:10:54 +00:00
Francisco 3e9f93eb8a refactor - remove old log_filter and logmap libraries from the codebase 2021-03-11 20:10:54 +00:00
Francisco 4969c98665 gtpu,bugfix - fixed formatting of addresses in GTPU 2021-03-09 16:23:08 +00:00
Francisco 5a1bf28fe1 optimization - minimization of number of std::string allocations for logging 2021-03-09 16:23:08 +00:00
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()
2021-02-11 15:49:00 +00:00
faluco 6359a2d948 - Upgrade the gtpu class in lib dir to srslog.
- Propagate old log elimination through all the dependencies of gtpu.
2021-02-11 14:37:27 +01:00
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.
2021-02-09 22:33:42 +01:00
Francisco 798f1e57e6 fix byte buffer double free in EPC 2021-02-08 12:20:37 +00:00
Francisco 3265d940ec remove byte buffer pool cached member variables as they are unnecessary now. 2021-02-07 18:48:21 +00:00
Francisco 04ab4eefcd use new make_byte_buffer() helper method to create unique_byte_buffers 2021-02-07 18:48:21 +00:00
Francisco 8a9c326bcb remove old direct uses of byte_buffer_pool 2021-02-07 18:48:21 +00:00
Frederick Pelchat fa1f9594cb Fix Issue #615 Only first 8 bits of TAC passed by the ENB to the EPC 2021-02-01 10:44:20 +01:00
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.
2021-01-29 11:29:20 +01:00
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
2021-01-20 15:46:46 +01:00
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.
2020-12-18 10:52:51 +00:00
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.
2020-12-12 15:59:27 +01:00
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.
2020-12-12 15:59:27 +01:00
Andre Puschmann 00f3f21081 last set of license header changes 2020-12-12 15:59:26 +01:00
Andre Puschmann 9608236ce4 fix srsepc_if_masq.sh 2020-12-12 15:59:26 +01:00
Andre Puschmann 07d2bc4fe8 change license header to agnostic version with hint to root LICENSE file 2020-12-12 15:59:25 +01:00
Francisco Paisana 510959b50f update nr asn1 files, and asn1 tests 2020-12-12 15:58:32 +01:00
Dillon Amburgey 6fc2562ca1 Include current time in EMM information 2020-10-16 12:23:59 +02:00
faluco dfeed52514 - Rename out_stream function to console. 2020-09-29 17:38:13 +02:00