Commit Graph

682 Commits

Author SHA1 Message Date
Andre Puschmann 03e7d9c199 register handler for SIGTERM and SIGKILL in UE, eNB and EPC 2018-01-26 16:18:49 +01:00
Pedro Alvarez 628ccec07f Removed boost::mutex from EPC 2018-01-24 16:41:59 +00:00
Pedro Alvarez aa437806d8 rm boost::mutex from s1ap_ctx_mngmt 2018-01-24 15:47:06 +00:00
Pedro Alvarez 360bb5e2d6 rm boost::mutex from s1ap_mngmnt_proc 2018-01-24 13:50:03 +00:00
Pedro Alvarez d87023bb37 rm boost::mutex from s1ap_nas_transport 2018-01-24 11:17:34 +00:00
Pedro Alvarez 99e1a9f038 rm boost::mutex from MME 2018-01-24 10:31:47 +00:00
Pedro Alvarez 724bc6cbb5 rm boost::mutex from S1AP. 2018-01-23 15:26:54 +00:00
David Rupprecht 9f4e8c0632 Fixed MAC failure due to wrong size and xor debug prints 2018-01-22 14:35:38 +01:00
Pedro Alvarez 5bbfc17fc0 Fixed bzero of std::string bug in setting APN in attach accept msg. 2018-01-22 12:30:52 +00:00
David Rupprecht ab2fe19704 Add more debug logging into hss 2018-01-22 10:31:46 +01:00
David Rupprecht b1cabf8117 Made MCC and MNC in HSS configurable (not tested) 2018-01-22 09:46:27 +01:00
Andre Puschmann efd4a25044 fix EPC conf example 2018-01-19 12:01:02 +01:00
Pedro Alvarez 9dc0d9bac9 Merge branch 'epc_fixes' into epc 2018-01-18 17:25:27 +00:00
Pedro Alvarez bb4a06e736 Fixed some hard-coded values. 2018-01-18 17:18:48 +00:00
Andre Puschmann b04d49abd3 fix logging 2018-01-18 16:56:31 +01:00
Pedro Alvarez 6945ac697c Added command commandline argument to the interface masquerading script 2018-01-18 14:10:15 +00:00
Pedro Alvarez 3af13f4f2e Removing docs for now. Information is too basic. 2018-01-18 13:53:53 +00:00
Pedro Alvarez 75f14e57f4 Merge branch 'epc_fixes' into epc 2018-01-18 13:47:19 +00:00
Pedro Alvarez 11f8cc60ad deleted print 2018-01-18 13:39:51 +00:00
Pedro Alvarez a71edcb8c2 Continuing to cleanup the prints. 2018-01-18 13:25:33 +00:00
Andre Puschmann 0d5c110246 specify flags when opening UE db 2018-01-18 11:38:03 +01:00
Andre Puschmann 8eeaafba56 fix compiler warning 2018-01-18 11:29:13 +01:00
Andre Puschmann 1efc4e678a print error msg when UE DB wasn't found 2018-01-18 11:25:14 +01:00
Pedro Alvarez 982fca00fb Continuing to cleanup prints. 2018-01-17 20:47:40 +00:00
Pedro Alvarez 5ea945d3c5 Fixed bug of incrementing UE-MME S1AP twice in GUTI attach. 2018-01-17 20:03:24 +00:00
Pedro Alvarez 3227bc8e66 Deleting commented out and unused code. 2018-01-17 19:55:00 +00:00
Pedro Alvarez 074cf4526f Cleaned up the handling of the Initial UE message. 2018-01-17 19:50:24 +00:00
Pedro Alvarez cbc1e24e7e Cleaning up logging and printing. 2018-01-17 14:12:40 +00:00
Pedro Alvarez 0e1058c8d2 Fixing small bug at filling out GUTI. 2018-01-17 10:24:26 +00:00
Pedro Alvarez 82bc1f7ff3 Starting to add the ability of GUTI attach without requesting the ID, if the UE is already known. 2018-01-15 12:56:37 +00:00
Pedro Alvarez 3984e1d9db Added NAS identity request/response. 2018-01-14 15:40:41 +00:00
Pedro Alvarez 4634d13a3b Reverted changes in UE ctxt release request to avoid segfault. 2018-01-12 15:53:47 +00:00
Pedro Alvarez b09ae059c1 Small commit to avoid duplication of UE ctxt in GUTI attach. 2018-01-12 15:11:00 +00:00
Pedro Alvarez 6d4f773fba Added debug print 2018-01-10 18:39:04 +00:00
Pedro Alvarez 45effcca08 Starting to add GUTI attach support. 2018-01-10 17:04:36 +00:00
Pedro Alvarez 84e0723c3d Starting to add the mechanisms to perform GUTI attach. 2018-01-10 11:35:08 +00:00
Pedro Alvarez b14c6e85f4 Small commit 2018-01-06 17:26:28 +00:00
Pedro Alvarez 57990ba60d Added more configuration options to the EPC logs. 2018-01-06 12:57:49 +00:00
Pedro Alvarez 3beb708806 Moved context mangement functions to s1ap_ctx_mngmnt_proc class. 2017-12-27 16:21:30 +00:00
Pedro Alvarez 9e72fbce43 Continuing to change functions to ctx_mngmnt_proc 2017-12-26 15:59:57 +00:00
Pedro Alvarez c5b1b7edc3 Continuing to cleanup. moving procedures to ctx_mngmt_proc. 2017-12-22 16:11:51 +00:00
Pedro Alvarez 05604ec6eb Added UML diagram to docs 2017-12-22 00:14:42 +00:00
Pedro Alvarez ce78d895d5 Small bug fix 2017-12-21 20:13:32 +00:00
Pedro Alvarez 8c9704ef3c Adding delete session request. 2017-12-21 18:48:31 +00:00
Pedro Alvarez c3f0753a93 Adding some cleaning up functionality at the SPGW. 2017-12-21 06:46:37 +00:00
Pedro Alvarez c08b89f3e5 Continuing cleaning up. Moved a lot of functionality to nas_transport 2017-12-20 18:16:54 +00:00
Pedro Alvarez 1f55db09dc Deleted unused functions 2017-12-20 15:33:56 +00:00
Pedro Alvarez d3e1e7d853 Continuing to cleanup. Moved initial ue message to nas_transport 2017-12-20 15:28:10 +00:00
Pedro Alvarez 18f864d21d Fixed small bug 2017-12-20 11:58:54 +00:00
Pedro Alvarez 1fb304ddd3 Continuing to clean up. Moved S1 setup request to s1ap_mngmnt_proc 2017-12-20 10:45:55 +00:00
Pedro Alvarez a5633bf143 Continuing to clean S1AP 2017-12-19 18:12:12 +00:00
Pedro Alvarez da7c105a29 Starting to cleanup S1AP 2017-12-19 16:54:44 +00:00
Pedro Alvarez 9f79b4167f Small changes 2017-12-19 15:08:54 +00:00
Pedro Alvarez 031997d629 Adding script to marquerade outgoing interface. 2017-12-19 12:57:31 +00:00
Pedro Alvarez bc80cc3fff Starting to add DNS server configuration. 2017-12-18 18:09:42 +00:00
Pedro Alvarez e839d09b52 Fixed bug in generating keNB. 2017-12-18 14:05:21 +00:00
Pedro Alvarez cb5e329c22 Starting to release GTP-U tunnels when UE disconnects. 2017-12-17 19:55:12 +00:00
Pedro Alvarez 80780bfb2f Changed the way UE's IPs are assigned 2017-12-17 17:54:26 +00:00
Pedro Alvarez a8f268c55b Added cleanup functionality to the hss. 2017-12-17 16:30:50 +00:00
Pedro Alvarez a4e1707835 Fixed bug in packing ESM information request. 2017-12-17 16:05:52 +00:00
Pedro Alvarez 39e34a7bf9 Starting to send ESM information request msg when required. 2017-12-16 20:08:33 +00:00
Pedro Alvarez 0884d35378 added replayed GRPS security capabilities. Moto G4 sends security mode complete. 2017-12-16 15:32:40 +00:00
Pedro Alvarez 9d88d2b78f Addind replayed UE security capabilities. 2017-12-16 14:25:20 +00:00
Pedro Alvarez 9a0b883296 Added XOR support the the HSS. 2017-12-15 18:20:57 +00:00
Pedro Alvarez 0865571ec2 Minor commit (clearing whitespaces, etc.) 2017-12-14 08:38:37 +00:00
Pedro Alvarez aef328d68b Added the ability to the HSS to be configured through a .csv. 2017-12-13 19:50:19 +00:00
Pedro Alvarez 0a4e256fec Stripping GTP-U header at the S-GW and writting it to the TUN SGi interface. First over-the-air ping between the SP-GW and the UE. 2017-12-07 19:07:13 +00:00
Pedro Alvarez c183ac509d Fixed endianess bug of S-GW address sent to eNB. S-GW now receives upstream user traffic. Starting to strip the gtp-u header. 2017-12-07 18:34:05 +00:00
Pedro Alvarez c838758db2 Added downlink IP tunnel. Downlink user plane packets reach the UE. 2017-12-07 17:09:31 +00:00
Pedro Alvarez 2b7bd546bc Able to find eNB F-TEID from destination IP. Starting to add the GTP-U header to the packet. 2017-12-07 15:06:24 +00:00
Pedro Alvarez d18ff13d27 Modify Bearer response parsed ok. Starting to setup the user-plane tunnels 2017-12-06 20:18:11 +00:00
Pedro Alvarez 04d67509cf Getting all information necessary at the SP-GW to setup the user tunnels from the modify bearer response. 2017-12-06 18:34:37 +00:00
Pedro Alvarez d972549124 Starting to create structure for modify bearer response 2017-12-06 12:50:25 +00:00
Pedro Alvarez 489865fa22 Starting to parse Modify Bearer Request at the S-GW. 2017-12-05 19:17:46 +00:00
Pedro Alvarez 9f994dba04 Starting to generate modify bearer request. Fixed bug in unpacking activate default bearer accept. 2017-12-05 17:21:46 +00:00
Pedro Alvarez 8becf4ab23 Unpacking Activate EPS Bearer Context Accept. 2017-12-04 16:00:53 +00:00
Pedro Alvarez b2826402b9 Continuing to parse intial context setup 2017-12-04 10:54:47 +00:00
Pedro Alvarez c4c0a61d3c Continuing to work on context setup response. 2017-12-01 17:41:45 +00:00
Pedro Alvarez 0a36f00d2e Starting to decode initial context setup response. 2017-12-01 14:58:01 +00:00
Pedro Alvarez 47576aced1 Starting to add Init Context Setup Response Parsing. 2017-12-01 12:37:34 +00:00
Pedro Alvarez c05c328194 UE receives attach accepted ok and gets an IP. Still need to parse the initial context setup complete and modify the bearer request and setup the GTPU tunnels. 2017-11-30 20:08:37 +00:00
Pedro Alvarez 45434351cc Continuing to add attach accept and activate default bearer request NAS messages. 2017-11-30 18:42:30 +00:00
Pedro Alvarez f71c87d895 Starting to add attach accept and activate default bearer request NAS messages. 2017-11-30 17:06:56 +00:00
Pedro Alvarez 45ca57b4b6 eNB receiving Initial Context setup request correctly (without NAS attach accept and activate default bearer) 2017-11-30 12:12:18 +00:00
Pedro Alvarez 1a4868ebaf Justin 3 2017-11-30 11:47:34 +00:00
Pedro Alvarez 579d73165a Commit for Justin 2. 2017-11-30 11:25:45 +00:00
Pedro Alvarez bdd85d4f2d Commit for Justin 2017-11-30 11:22:49 +00:00
Pedro Alvarez 6fea4339cd Adding E-RAB QoS info 2017-11-30 11:21:56 +00:00
Pedro Alvarez d9bb3bbf4e eNB receiving Initial Context Setup, but segfaulting. Probably because QoS structure missing. 2017-11-29 18:35:02 +00:00
Pedro Alvarez 13595ccb2d Added logging to MME GTP-C. Fixed weird comment bug. 2017-11-29 16:34:14 +00:00
Pedro Alvarez 425f5d22b5 Starting to send Initial Context Setup Request to eNB. 2017-11-29 12:01:53 +00:00
Pedro Alvarez 5598e10ed6 commit to switch computer 2017-11-28 23:27:53 +00:00
Pedro Alvarez c1d550ddab Starting the code to send ctx setup request to eNB 2017-11-28 19:33:53 +00:00
Pedro Alvarez 103361deb9 Fixed SPGW initialization bug. 2017-11-28 17:52:57 +00:00
Pedro Alvarez 5bd630ad15 Finalizing Context setup request. Compiling now. 2017-11-28 15:48:44 +00:00
Pedro Alvarez 831f7b00b6 Changed TEID to network byte order. 2017-11-27 19:14:37 +00:00
Pedro Alvarez 6cd055e80e Continuing to work on initial context setup request. 2017-11-27 19:13:34 +00:00
Pedro Alvarez fd6baaf15c Changed S1AP to singleton. Continuing to work on the intial context setup request. Added a TEID to MME_UE_S1AP_ID map. 2017-11-27 15:38:10 +00:00
Pedro Alvarez 3c839c1c9b Starting to create Initial Context Setup request message. 2017-11-24 18:20:14 +00:00
Pedro Alvarez ee21a277e5 Added PAA information in the create session response. 2017-11-24 12:14:36 +00:00
Pedro Alvarez d76daf3db5 Added GTP-C cause value enum. 2017-11-24 11:36:49 +00:00
Pedro Alvarez 2e6050bf38 Started to fill in the necessary information for the create session response. 2017-11-23 18:11:53 +00:00
Pedro Alvarez 2172662388 Added initial create session response structure. Compiling now. 2017-11-23 14:57:21 +00:00
Pedro Alvarez ff32f31c9b Added structures to create session request. Starting to add create session response structure 2017-11-23 12:45:30 +00:00
Pedro Alvarez e754c6cbf5 Fixed more compilation bugs. Bearer context IE still needs to be added. 2017-11-23 11:23:40 +00:00
Pedro Alvarez ccbeb9e1c5 Fixed a bunch of compilation errors. 2017-11-22 14:41:59 +00:00
Pedro Alvarez a8a370ec21 Starting to add Create Session Request function 2017-11-22 11:52:37 +00:00
Pedro Alvarez 606520d244 Added a TUN interface for the SGi and a socket to receive packets from the S1-U. Select is able choose the fd that needs to be read from. 2017-11-20 20:34:08 +00:00
Pedro Alvarez 796fba6f55 Adding socket for S1-U interface. 2017-11-20 12:30:25 +00:00
Pedro Alvarez f9b2c6434a Added TUN SGi interface to SP-GW. 2017-11-17 18:01:06 +00:00
Pedro Alvarez eac3ee26c1 Starting to add TUN if for SGi interface 2017-11-17 16:04:42 +00:00
Pedro Alvarez b6d0fcfdbe Renamed s-gw to sp-gw. 2017-11-17 12:28:05 +00:00
Pedro Alvarez 99f6ffe63b Starting to add code to create the GTP-C messages. 2017-11-15 16:39:25 +00:00
Pedro Alvarez 042cabc8a0 Starting to add S-GW 2017-11-13 16:42:41 +00:00
Pedro Alvarez 46edf6feab Small modification to parse config file. 2017-11-13 15:18:35 +00:00
Pedro Alvarez d0c0d29f62 Packing and sending Authentication Reject if XRES != RES 2017-11-13 12:35:53 +00:00
Pedro Alvarez f908439ed4 Added the Authentication reject nas message. 2017-11-10 19:32:32 +00:00
Pedro Alvarez 150a747181 Handling UE Context release to cleanup UE context. 2017-11-10 18:18:32 +00:00
Pedro Alvarez 1f52d1741c Added the mechanisms to remove UE's context when the eNB is terminated. 2017-11-10 15:21:56 +00:00
Pedro Alvarez 87b775d94b Added functionallity to delete eNB context when SCTP session is terminated. 2017-11-09 17:43:40 +00:00
Pedro Alvarez eba3837ab4 Changing the logging a bit. 2017-11-09 13:09:30 +00:00
Pedro Alvarez c049069346 Added a function to handle the security mode complete. 2017-11-08 18:44:27 +00:00
Pedro Alvarez a77308b4b8 Starting to add a function to parse security command complete. 2017-11-08 18:00:44 +00:00
Pedro Alvarez 82b661541f removed some white space 2017-11-08 14:23:17 +00:00
Pedro Alvarez 468b0f2581 Fixed some issues with the MME and HSS logging. 2017-11-08 14:10:25 +00:00
Pedro Alvarez 1621b6e93a Starting to integrity protect NAS messages. UE accepted security command reques, starting to parse security command complete. 2017-11-07 20:14:43 +00:00
Pedro Alvarez bb85525ad2 Fixed bug on network authentication. 2017-11-07 18:04:10 +00:00
Pedro Alvarez dc107edd41 Continue to pack security mode command 2017-11-07 15:10:52 +00:00
Pedro Alvarez d5e1290883 starting to work on the security mode command 2017-11-07 14:13:09 +00:00
Pedro Alvarez 44a28b3302 Starting to save UE context. 2017-11-06 19:10:57 +00:00
Pedro Alvarez 9170f5c4cf Starting to parse UL NAS Transport 2017-11-06 17:03:26 +00:00
Pedro Alvarez 5d4f0b3dfb deleting debug code 2017-11-06 15:42:08 +00:00
Pedro Alvarez 473e252168 Generating AUTN correctly. UE considers the network valid now. Starting to handle authentication response. 2017-11-06 15:41:14 +00:00
Pedro Alvarez 25aa394086 Adding some debug code. 2017-11-04 11:13:54 +00:00
Pedro Alvarez 5b5c65435d Fixed bug in the packing of the dw nas message. UE receives the authentication request message now. 2017-11-03 14:38:34 +00:00
Pedro Alvarez 961e0fc68d Cleaning up the code 2017-11-03 11:02:30 +00:00
Pedro Alvarez 8a81149ca3 eNB Receiving Downlink NAS Transport. 2017-11-02 15:57:19 +00:00
Pedro Alvarez fae584dc91 Packed authentication request message. Code needs cleanup and testing. 2017-11-02 15:07:28 +00:00
Pedro Alvarez 7737acb970 Starting to fill the Attach Request message. 2017-11-01 19:14:16 +00:00
Pedro Alvarez 9c54a8b7de Initial code to generate Kasme, rand, autn and xres 2017-11-01 15:14:41 +00:00
Pedro Alvarez 470c815196 Generating RAND 2017-11-01 14:07:44 +00:00
Pedro Alvarez 1a8a2f738b Starting to add SQN generation. 2017-10-31 19:34:10 +00:00
Pedro Alvarez 6c60c493e7 Hard-coded k, amf and op (for now). 2017-10-31 18:05:26 +00:00
Pedro Alvarez 3fd552c0e2 Fixed bug in printing IMSI. IMSI decoded correctly from NAS attach request. 2017-10-31 15:58:33 +00:00
Pedro Alvarez 81827f891b Decoding correctly the NAS Attach request message now. 2017-10-31 13:53:24 +00:00
Pedro Alvarez ae18da83b2 Starting to add functions to the HSS to get K, AMF and OP. 2017-10-27 14:22:04 +01:00
Pedro Alvarez 8c28335098 Parsing IMSI should be ok. 2017-10-26 19:03:37 +01:00
Pedro Alvarez efe258fb6f Starting to get the IMSI from the attach request. 2017-10-26 18:26:47 +01:00
Pedro Alvarez ef73254707 Added new HSS class to compute the authentication vectors. 2017-10-26 14:20:29 +01:00
Pedro Alvarez e7d6ea530f Starting to add HSS class 2017-10-26 10:32:48 +01:00
Pedro Alvarez 70f3bcaeba Starting to parse NAS Attach Request message to get IMSI 2017-10-25 19:17:36 +01:00
Pedro Alvarez 79c0daea91 Starting to handle Initial UE message 2017-10-24 18:08:23 +01:00
Pedro Alvarez bc447a32fe Addind the mechanisms to cleanup eNB when SCTP connection is terminated. 2017-10-20 17:05:52 +01:00
Pedro Alvarez b9aff650a7 Storing eNB ctx info 2017-10-20 15:39:23 +01:00
Pedro Alvarez 841f38fac0 Starting to save eNB context 2017-10-20 15:21:44 +01:00
Pedro Alvarez 17ffc1f4bb Added a file for common S1AP structs 2017-10-20 14:21:23 +01:00
Pedro Alvarez bfb7f12298 Fixed small bug with sleep. 2017-10-20 14:16:19 +01:00
Pedro Alvarez 0dbddb8a4b Finished separating the pack/unpack from the main S1AP class. 2017-10-20 11:45:45 +01:00
Pedro Alvarez f73d295ae0 Separating msg packing from the main S1AP class. 2017-10-20 09:35:26 +01:00
Pedro Alvarez eb3520630d Cleanned up the setup request and failure packing/unpacking 2017-10-19 19:42:18 +01:00
Pedro Alvarez d8436ea2fc A bit of code cleanup 2017-10-19 14:47:41 +01:00
Pedro Alvarez 4f6fafb66d General code cleanup 2017-10-18 15:27:21 +01:00
Pedro Alvarez 4307a5aef2 Removing the timeout of the socket. 2017-10-18 14:33:58 +01:00
Pedro Alvarez 91fd66fe9a Small bug fix. 2017-10-17 18:40:04 +01:00
Pedro Alvarez 26f03a49f3 Intial code for S1 setup response 2017-10-17 18:13:20 +01:00
Pedro Alvarez 2bfb008bd2 MME now replies with S1 Setup falure. 2017-10-17 12:32:34 +01:00
Pedro Alvarez adf1764496 added plmn to MCCMNC in the srslte lib 2017-10-16 13:03:33 +01:00
Pedro Alvarez 5aa91483c5 Done decoding of s1 Setup message. Starting to store context and prepare a reply. 2017-10-13 19:19:45 +01:00
Pedro Alvarez 41aafbc9c8 Added initial ability to parse the S1 setup request. 2017-10-12 21:53:48 +01:00
Pedro Alvarez ca212db4c9 Adding argument parsing to main.cc 2017-10-11 19:24:02 +01:00
Pedro Alvarez 0a670d526a Added some logging functionality. 2017-10-11 16:18:47 +01:00
Pedro Alvarez f93335fa50 Fixed bug of not subscribing to sctp_data_io_event 2017-10-11 12:22:02 +01:00
Pedro Alvarez 396335afee Added initial mechanisms to receive msgs from eNB. 2017-10-10 17:32:34 +01:00
Pedro Alvarez a5621dd430 Start of skeleton of MME config file 2017-10-10 11:51:49 +01:00
Pedro Alvarez 58b5831009 Starting to create SCTP socket for S1APP 2017-10-09 19:35:00 +01:00
Pedro Alvarez 429c32cd5a Added initial app to run MME. Starting to add S1APP class. 2017-10-09 18:36:40 +01:00
Pedro Alvarez 136e3a2697 Added some boieler plate code for the MME (contruct, singleton, destruct). 2017-10-09 16:49:43 +01:00
Pedro Alvarez b0aaa316c4 Sligth change in design docs 2017-10-09 16:08:06 +01:00
Pedro Alvarez b561dfa087 Initial skeleton of the code. 2017-10-09 15:42:13 +01:00
Pedro Alvarez 5c0e2ee32e Starting to add CMake support 2017-10-09 14:11:43 +01:00
Pedro Alvarez 3e5e244440 Changing CMakeLists to compile EPC 2017-10-09 12:22:17 +01:00
Pedro Alvarez d3aa79427c Initial commit with docs to start new branch 2017-10-09 11:01:13 +01:00