200 Commits (3ad19f21b680675cb582525a44cc84b03b8f75b4)

Author SHA1 Message Date
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
David Rupprecht e547883a8f Wrapper functions for integrity generate 6 years ago
David Rupprecht 7eef2c1c4b start with decryption function 6 years ago
Pedro Alvarez 9350e03810 Changed detach request and tracking area update request to nas.cc 6 years ago
Pedro Alvarez a9e5b3b8e9 Changed service request to nas.cc 6 years ago
Pedro Alvarez 3337f21ffa Added handle GUTI attach from known UE again. 6 years ago
Pedro Alvarez 0d80ae795b Added IMSI attach from unknown UE as a static function. 6 years ago
Pedro Alvarez 860e1b5491 Changing Handling of initial UE NAS messages to use static methods. Handling of unknown GUTI attach request should be ok. 6 years ago
Pedro Alvarez 9e808ff968 Starting to handle NAS initial UE messages as static methods of the nas class. 6 years ago
Pedro Alvarez e3286897ce Changed the rest of the nas handling to use send_downlink_nas_transport. 6 years ago
Pedro Alvarez f1d30c7f23 Changed handle guti_attach_from_known_ue and unknown_ue to use send_downstream_nas_message. 6 years ago
Pedro Alvarez dd725be60c Changed pack identity request. 6 years ago
Pedro Alvarez 65a5139751 Fixed mistake in downlink nas transport. Changing authication request to use downlink_nas_transport. 6 years ago
Pedro Alvarez 21c34b9ce5 Changing security mode complete to use downlink nas transport 6 years ago
Pedro Alvarez 93222f582c Changed authentication response to use downlink_nas_transport(). 6 years ago
Pedro Alvarez 3073ab6822 Changed dettach request to use downlink nas transport. 6 years ago
Pedro Alvarez 749e84315a Starting to add send_downlink_nas_transport helper function. 6 years ago
Pedro Alvarez 872f7adc49 Added find imsi from TMSI helper function. 6 years ago
Pedro Alvarez fa0c8d5995 Moved most of IMSI attach request into nas.cc. 6 years ago
Pedro Alvarez f6b8982939 Moved most of the GUTI attach to nas.cc. 6 years ago
Pedro Alvarez c518d3fde3 Starting to move inital UE messages to nas.cc. Breaking up attach request handling into smaller functions. 6 years ago
Pedro Alvarez 55675eb532 Fixed bug in setting MCC and MNC in attach accept. Attach seems to be working again. 6 years ago
Pedro Alvarez 7c53330bec Fixed NAS initialization. Attach request seems to work again now. 6 years ago
Pedro Alvarez 4ba777c9c3 Added nas log. Fixed gen_auth_info_anwser. Authentication is working again. 6 years ago
Pedro Alvarez de8679b536 Continuing to cleanup. Starting to compile again. 6 years ago
Pedro Alvarez 406d198eac Cleaning up nas.cc 6 years ago
Pedro Alvarez f03967776a Continuing to clean nas.cc 6 years ago
Pedro Alvarez 6ef3124fc9 Fixed up release ue ctx command. 6 years ago
Pedro Alvarez b25c12a084 Fixing nas.cc 6 years ago
Pedro Alvarez 85672d4a3f Fixing up s1ap.cc 6 years ago
Pedro Alvarez d8f1b3c88d Moved uplink nas messages to nas.cc. s1ap_nas_transport is compiling. 6 years ago
Pedro Alvarez 1bad88a432 Changing integrity functions in nas.cc 6 years ago
Pedro Alvarez 5fd337a7ad Continue to move uplink NAS into nas.cc. 6 years ago
Pedro Alvarez 4d40e9ca2d Temporarilly changing ESM state back to previous definition. 6 years ago
Pedro Alvarez c1eff4ce73 Changing pack accept 6 years ago
Pedro Alvarez 3663d59920 Starting to add s1ap_interface_gtpc and s1ap_interface_nas. Adapting send initial context setup request accordingly. 6 years ago
Pedro Alvarez f33fcf65bf Fixing up S1AP context management procedures to use the new class. 6 years ago
Pedro Alvarez 4c164acbc3 Moving many of the functions fron s1ap_nas_transport to it's own NAS class. 6 years ago
Pedro Alvarez 41a5788cc7 Adding nas.h 6 years ago