2581 (EAPL("Identity: other\n"))); |
2581 (EAPL("Identity: other\n"))); |
2582 } |
2582 } |
2583 |
2583 |
2584 |
2584 |
2585 if (m_authentication_type == AKA_AUTHENTICATION_TYPE_FULL_AUTH |
2585 if (m_authentication_type == AKA_AUTHENTICATION_TYPE_FULL_AUTH |
2586 && ((m_identity_type == AKA_IDENTITY_TYPE_IMSI_ID |
2586 && (m_identity_type == AKA_IDENTITY_TYPE_IMSI_ID |
2587 && (get_saved_previous_state() == eap_type_aka_state_waiting_for_identity_response |
2587 && (get_saved_previous_state() == eap_type_aka_state_waiting_for_identity_response |
2588 || get_saved_previous_state() == eap_type_aka_state_waiting_for_aka_identity_response_with_at_permanent_identity |
2588 || get_saved_previous_state() == eap_type_aka_state_waiting_for_aka_identity_response_with_at_permanent_identity |
2589 || get_saved_previous_state() == eap_type_aka_state_waiting_for_aka_identity_response_with_at_full_auth_identity |
2589 || get_saved_previous_state() == eap_type_aka_state_waiting_for_aka_identity_response_with_at_full_auth_identity |
2590 || get_saved_previous_state() == eap_type_aka_state_waiting_for_aka_identity_response_with_at_any_identity |
2590 || get_saved_previous_state() == eap_type_aka_state_waiting_for_aka_identity_response_with_at_any_identity |
2591 || get_saved_previous_state() == eap_type_aka_state_waiting_for_aka_identity_response)) |
2591 || get_saved_previous_state() == eap_type_aka_state_waiting_for_aka_identity_response)) |
2592 || (m_identity_type == AKA_IDENTITY_TYPE_PSEUDONYM_ID |
2592 || (m_identity_type == AKA_IDENTITY_TYPE_PSEUDONYM_ID |
2593 && (get_saved_previous_state() == eap_type_aka_state_waiting_for_identity_response |
2593 && (get_saved_previous_state() == eap_type_aka_state_waiting_for_identity_response |
2594 || get_saved_previous_state() == eap_type_aka_state_waiting_for_aka_identity_response_with_at_permanent_identity |
2594 || get_saved_previous_state() == eap_type_aka_state_waiting_for_aka_identity_response_with_at_permanent_identity |
2595 || get_saved_previous_state() == eap_type_aka_state_waiting_for_aka_identity_response_with_at_any_identity |
2595 || get_saved_previous_state() == eap_type_aka_state_waiting_for_aka_identity_response_with_at_any_identity |
2596 || get_saved_previous_state() == eap_type_aka_state_waiting_for_aka_identity_response))) |
2596 || get_saved_previous_state() == eap_type_aka_state_waiting_for_aka_identity_response)) |
2597 ) |
2597 ) |
2598 { |
2598 { |
2599 eap_type_aka_identity_type local_identity_type = m_identity_type; |
2599 eap_type_aka_identity_type local_identity_type = m_identity_type; |
2600 |
2600 |
2601 eap_status_e local_status = query_AKA_authentication_vector(next_eap_identifier, &local_identity_type); |
2601 eap_status_e local_status = query_AKA_authentication_vector(next_eap_identifier, &local_identity_type); |
4732 restore_saved_previous_state(); |
4732 restore_saved_previous_state(); |
4733 EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT); |
4733 EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT); |
4734 return EAP_STATUS_RETURN(m_am_tools, status); |
4734 return EAP_STATUS_RETURN(m_am_tools, status); |
4735 } |
4735 } |
4736 |
4736 |
4737 if (l_aka_payloads->get_counter_too_small()->get_payload_included() == true) |
4737 if (l_aka_payloads->get_COUNTER_TOO_SMALL()->get_payload_included() == true) |
4738 { |
4738 { |
4739 // When the client detects that the |
4739 // When the client detects that the |
4740 // counter value is not fresh, it includes the AT_COUNTER_TOO_SMALL |
4740 // counter value is not fresh, it includes the AT_COUNTER_TOO_SMALL |
4741 // attribute in EAP-Response/AKA/Re-authentication. This attribute |
4741 // attribute in EAP-Response/AKA/Re-authentication. This attribute |
4742 // doesn't contain any data but it is a request for the server to |
4742 // doesn't contain any data but it is a request for the server to |