578 Commits (5dbc96458a71acbf4a1d2f379272126b08c03446)

Author SHA1 Message Date
Andre Puschmann 860d8af911 Merge branch 'master' into next 6 years ago
Zhe Huang 8b526e1c20 Fix SQN incrementation arithmetic (#212)
* Fix SQN incrementation arithmetic

Current implementation of increment_sqn function increments the 48 bits
SQN directly by 1 which is incorrect according to 3GPP TS 33.102 version
11.5.1 Annex C. This bug causes commercial UEs to report AUTHENTICATION
FAILURE EMM cause #21 "synch failure" when SQN is out of sync.

According to 3GPP TS 33.102 version 11.5.1 Annex C, 48 bits SQN consists
of 43 bits SEQ and 5 bits IND parts where SEQ are incremented during
generation of authentication vector or resync procedure. A
new IND value is also assigned when an authentication vector is
generated. However, resync procedure will use the same IND value.

This patch implements the increment_sqn function according to 3GPP TS
33.102 version 11.5.1 Annex C. A new function increment_seq_after_resync
is added to handle the special case of SQN arithmetic during SQN
resynchronization.

This patch is tested with two comercial UEs (Oneplus One and Oneplus 3T).

* Fix the maximum value of SEQ value to be 2^43-1

The SEQ value is 43 bits long and previous maximum value has a typo (one
extra F) which allows SEQ value to be 2^47-1. This patch corrects the typo.
6 years ago
Andre Puschmann a9d46cbad3 Merge branch 'master' into next_test_after_merge 6 years ago
Zhe Huang cd1fb0d81e Set AMF to all zeros during resync (#213)
During the resync procedure, the security_milenage_f1_star generates a
MAC_S value that does not match the MAC_S value reported in AUTS. This
posts a security risk.

According to 3GPP TS 33.102 version 11.5.1 section 6.3.3, the AMF used
to calculate MAC-S assumes a dummy value of all zeros so that it does
not need to be transmitted in the clear in the re-synch message.

This patch corrects this problem. MAC_S reported by AUTS matches the
MAC_S calculated using f1_star function after the fix.
6 years ago
Pedro Alvarez 7bad5a52a0 Merging handling of initial UE messages as static methods into nas cleanup. 6 years ago
Pedro Alvarez 9350e03810 Changed detach request and tracking area update request to nas.cc 6 years ago
Pedro Alvarez d2cb01ce87 Deleted old service request. 6 years ago
Pedro Alvarez a9e5b3b8e9 Changed service request to nas.cc 6 years ago
Pedro Alvarez 4313fb1e72 Making sure M-TMSI is in host order in other small bug fixes. 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 0ddb3d39dc Moved handle_imsi_attach_request_from_unknown_ue to nas.cc in static method. Working. 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 c011df5612 Changing Service request to nas.cc 6 years ago
Pedro Alvarez a46f1e4e9a Changing Tracking Area Update Request Initial Message to nas.cc 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 8bcc8ecaeb Starting to move initial attach request handling to nas.cc 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 1f2e22adf4 coding style fixup. 6 years ago
Pedro Alvarez 23bd95c432 Whitespace fix. 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 1fba7f0afa Moved function that gets NAS type string to liblte_mme.cc 6 years ago
Pedro Alvarez 127e214b07 Added function to print string of NAS message type based on the message code. 6 years ago
Pedro Alvarez 5d75b16ee9 Fixed up mistake in UE Context Release command. 6 years ago
Pedro Alvarez 7c53330bec Fixed NAS initialization. Attach request seems to work again now. 6 years ago
Pedro Alvarez d76053e7ec Making sure NAS message is added to the initial context setup request. 6 years ago
Pedro Alvarez cdc72b8164 Fix bug in packing of transport layer address 6 years ago
Pedro Alvarez a4be55c030 Fixed bug in re-synch procedure. 6 years ago
Pedro Alvarez 4059b19b57 Coding style fixups in SP-GW. 6 years ago
Pedro Alvarez 66dc1e0700 Fixed up the initialization of NAS context in IMSI attach request. 6 years ago
Pedro Alvarez 7077530a29 Merge branch 'next' into nas_cleanup 6 years ago
Pedro Alvarez 0aed1f47a5 White space fixes. 6 years ago
Pedro Alvarez 4ba777c9c3 Added nas log. Fixed gen_auth_info_anwser. Authentication is working again. 7 years ago
Pedro Alvarez da840ac334 Fix un-initialized buffer pool in nas.cc 7 years ago
Pedro Alvarez 4e78d70d97 Fixing issue in pack identity request. 7 years ago
Pedro Alvarez 6615af57ee Cleaning up handle initial UE message a bit more. 7 years ago
Pedro Alvarez bd2fa4c04b Cleaning up Handle initial UE message 7 years ago
Pedro Alvarez de8679b536 Continuing to cleanup. Starting to compile again. 7 years ago
Pedro Alvarez 406d198eac Cleaning up nas.cc 7 years ago
Pedro Alvarez f03967776a Continuing to clean nas.cc 7 years ago
Pedro Alvarez 6ef3124fc9 Fixed up release ue ctx command. 7 years ago
Pedro Alvarez f350fa5ec0 Small fixes in coding style. 7 years ago
Pedro Alvarez b25c12a084 Fixing nas.cc 7 years ago
Pedro Alvarez 85672d4a3f Fixing up s1ap.cc 7 years ago
Pedro Alvarez 05a34ec8e3 Cleaning up s1ap.cc 7 years ago
Pedro Alvarez 993e986315 Changing mme_gtpc 7 years ago
Pedro Alvarez d8f1b3c88d Moved uplink nas messages to nas.cc. s1ap_nas_transport is compiling. 7 years ago
Pedro Alvarez 1bad88a432 Changing integrity functions in nas.cc 7 years ago
Pedro Alvarez 5fd337a7ad Continue to move uplink NAS into nas.cc. 7 years ago
Pedro Alvarez 40d53f8f45 Changed s1ap_ctx_mngmt_proc. Starting to address s1ap_nas_transport. 7 years ago
Pedro Alvarez e9528155b5 Changing handle initial context setup response. 7 years ago
Pedro Alvarez 4d40e9ca2d Temporarilly changing ESM state back to previous definition. 7 years ago
Pedro Alvarez c1eff4ce73 Changing pack accept 7 years ago
Pedro Alvarez 3663d59920 Starting to add s1ap_interface_gtpc and s1ap_interface_nas. Adapting send initial context setup request accordingly. 7 years ago
Pedro Alvarez fead1affaa Continue to cleanup s1ap_ctx_managment. 7 years ago
Pedro Alvarez f33fcf65bf Fixing up S1AP context management procedures to use the new class. 7 years ago
Pedro Alvarez 4c164acbc3 Moving many of the functions fron s1ap_nas_transport to it's own NAS class. 7 years ago
Pedro Alvarez 41a5788cc7 Adding nas.h 7 years ago
Pedro Alvarez 597cf18b9d Changing common/debug.h to crash_handler.h 7 years ago
Pedro Alvarez 081721751b Starting to clean up the NAS in the EPC. 7 years ago
Pedro Alvarez c3ef88e112 Fixing conflicts with next. 7 years ago
Pedro Alvarez 39c5c49189 Fixing coding style of some if statements. 7 years ago
Ismael Gomez 7d324306b3 Default RLC to UM 7 years ago
Pedro Alvarez 55a6c3d808 Changed the epc.conf to have some instructions how to configure wireshark to decode the S1AP packets from the epc.pcap file. 7 years ago
Pedro Alvarez 151efc61d5 Added s1ap_tx_pdu function. This function will record to pcap if PCAP is enabled. 7 years ago
Pedro Alvarez b89ad628e2 Added config option to enable pcap. 7 years ago
Pedro Alvarez ba5708dc60 Starting to add S1AP pcap to EPC. 7 years ago
Pedro Alvarez 304510ea31 Whitespaces fix. 7 years ago
Pedro Alvarez d00662708f Added srslte_debug_handle_crash to EPC. 7 years ago
Ismael Gomez 67d4096e9e Default RLC to UM 7 years ago
Pedro Alvarez 3d24094829 Merge branch 'next' into epc_sigpipe 7 years ago
Pedro Alvarez a74d1905b4 Fix command line parsing in mbms-gw 7 years ago
Pedro Alvarez 712a1b7639 Fix compiling bug 7 years ago
Pedro Alvarez 1dc5836365 Adding SGi-mb mask to config 7 years ago
Pedro Alvarez ec0d7b0c7b Making sure that MME updates the eNB SCTP info when it receives GUTI attach from attached user. 7 years ago
Pedro Alvarez ced47af7ba Chenging the MBMS-Gw to pass the log to the gtpu_write_header. 7 years ago
Pedro Alvarez dc3cc43e02 Changing SPGW to pass log to lib function. 7 years ago
Pedro Alvarez e2e82cc464 Removing broadcats hack. Returning to a simple TUN insterface on the MBMS-GW. 7 years ago
Pedro Alvarez badbb1de77 Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 7 years ago
Pedro Alvarez aee66c3624 Merge branch 'ip_check' into next 7 years ago
Pedro Alvarez 66757573c1 Making sure that QCI helper comments in user_dg.csv stay when file is overwritten. 7 years ago
Pedro Alvarez 99715dc6e2 Adding check for total length as well. 7 years ago
Pedro Alvarez 1826684372 Fixing a compile issue. 7 years ago
Pedro Alvarez 3d2f7d2adf Adding some checks to IP packets at SPGW. 7 years ago
Pedro Alvarez c07de1d9e1 Remove debug print. 7 years ago
Pedro Alvarez 0a6540d8bf Saving QCI into ESM context. Different QCIs should be working now. 7 years ago
Pedro Alvarez 66db3deeb4 Starting to add Bearer QoS parameter to create session request. 7 years ago
Pedro Alvarez f9e3d3a1f7 Added mechanisms to read and write QCI from/to user_db.csv. 7 years ago
Pedro Alvarez fecdbcff4f Starting to add support to different QCI in EPC. 7 years ago
Pedro Alvarez e57797b786 Cosmetic change. 7 years ago
Pedro Alvarez b8bb270ac7 Cosmetic fix. 7 years ago
Pedro Alvarez f301bb6373 Merging next into op_vs_opc and resolving conflicts. 7 years ago
Pedro Alvarez ad1d32333b Fixing up user_db.csv comments and default values. 7 years ago
Pedro Alvarez 80f7f955ce Making sure that the Security Mode command uses the correct eKSI. 7 years ago
Pedro Alvarez d44a3c44ca Making sure eKSI is changed on re-synch. Re-synch on SYSMOCOM USIMs seem to work. 7 years ago
Pedro Alvarez d3469e51c1 Starting to play with key set identifier. 7 years ago
Pedro Alvarez 11b51e7cb4 Merge branch 'next' into epc_sigpipe 7 years ago
Pedro Alvarez 8df7a1b1af Change some debug prints. 7 years ago
Pedro Alvarez fd97caadb3 Revert "Merge branch 'op_vs_opc' into next"
This reverts commit be2276b8da, reversing
changes made to 4d3fd342f7.
7 years ago
Pedro Alvarez 6a32b5b047 Starting to separate the increment of SQN into a seperate function. 7 years ago
Pedro Alvarez b9c50a93a8 Fixed bug in writing OPc into user_db.csv. 7 years ago
Pedro Alvarez bd39d8bac2 Fixed bug in getting OPc. Removed debug print. Fixed test12345. UE is still having re-synch issues. 7 years ago
Pedro Alvarez e9c3b4c8ce Added OPc suport on EPC. 7 years ago
Pedro Alvarez 0d61011d13 Changing user_db.csv to allow users to choose OP/OPc. 7 years ago
Pedro Alvarez a839817790 Starting to add OPc option to HSS. 7 years ago
Andre Puschmann 2c179dd84f add config install helper 7 years ago
Ismael Gomez be2276b8da Merge branch 'op_vs_opc' into next 7 years ago
Andre Puschmann aa563b1555 copy example config files and if masq script to install folder 7 years ago
Andre Puschmann 36c650399b rework app startup to search for config files in user's home directory 7 years ago
Andre Puschmann 463b138026 remove debug printfs 7 years ago
yagoda fac8bb7b7a adding mbms-gw broadcast support, adding parameter for automatic mbms service start 7 years ago
Andre Puschmann 9ce3be974a Merge branch 'next' into embms_merge_final 7 years ago
yagoda e4c3f0bc30 adding mbms-gw and mch generation tables 7 years ago
Andre Puschmann 2001bb1c49 remove unneeded debug 7 years ago
Andre Puschmann 5ac08b62e9 remove usage of std::string for APN 7 years ago
Andre Puschmann ab2c1cd10f fix typos in s1ap in EPC 7 years ago
Andre Puschmann 258785e7de add log to s1ap 7 years ago
Andre Puschmann b4a23d325a cosmetic changes 7 years ago
Pedro Alvarez 2e7958e9a0 Merge branch 'master' into op_vs_opc 7 years ago
Andre Puschmann 5ecc145f14 Merge branch 'master' into next 7 years ago
David Rupprecht 751f7f6919 Reset NAS UL counter when sending security mode command for right k_enb 7 years ago
David Rupprecht caa59e5141 Clean up key derivation and more logs 7 years ago
David Rupprecht 01985fbffa private internal nas methods 7 years ago
Ismael Gomez 208871b251 Changed liblte structs to simple structs and initialized nas/rrc uses. 7 years ago
Pedro Alvarez 45c7a5bb31 Merge branch 'epc' of github.com:softwareradiosystems/srsLTE into epc 7 years ago
Pedro Alvarez f87f659874 Whitespaces and comment fixes. 7 years ago
Andre Puschmann 2309f63002
Merge pull request #163 from pily112/handle_plain_nas_message
Added auth failure and detach to plain nas message
7 years ago
Pedro Alvarez f6547d4e8a Merge remote-tracking branch 'david/handle_plain_nas_message' into epc
This pull request add the andling of authentication failure when sent as plain NAS, which is important for SYNCH authentication issues.
7 years ago
Pedro Alvarez 3c44bc3b2c Fixed double erease mistake. The SIGPIPE seems to be gone. 7 years ago
Pedro Alvarez 5bd8509ce0 Making sure UE is erased from UE set. 7 years ago
Pedro Alvarez 362c856e53 Changed UE set to be accessible from SCTP association. 7 years ago
Pedro Alvarez 300b9e7757 Starting to add UEs to the eNB context again. 7 years ago
Pedro Alvarez a6fbdb62cd Adding function to mark the UE as present to in the eNB 7 years ago
Andre Puschmann 3b5dd5176a More debug prints. 7 years ago
Pedro Alvarez 609881855d Adding a debug print 7 years ago
Pedro Alvarez d5ec07185d Making sure that the UE is EMM-DEREGISTERED if the eNB is terminated. 7 years ago
Andre Puschmann 319f473363 fix remaining printf warnings 7 years ago
David Rupprecht 4932ea9dfb Added auth failure and detach to plain nas message 7 years ago
David Rupprecht 06d4559294 Change include path absolut to project dir 7 years ago