diff -r e863583e6720 -r c23bdf5a328a eapol/eapol_framework/eapol_common/am/common/eap_file_config.cpp --- a/eapol/eapol_framework/eapol_common/am/common/eap_file_config.cpp Fri Sep 17 08:30:11 2010 +0300 +++ b/eapol/eapol_framework/eapol_common/am/common/eap_file_config.cpp Mon Oct 04 00:19:54 2010 +0300 @@ -16,7 +16,7 @@ */ /* -* %version: 33 % +* %version: 35 % */ // This is enumeration of EAPOL source code. @@ -2227,7 +2227,7 @@ } else { - // Some konfiguration objects are not included to message yet. + // Some configuration objects are not included to message yet. } atom = atom->get_next_atom(); @@ -2513,6 +2513,32 @@ } else //if (status != eap_status_ok) { + EAP_TRACE_DEBUG( + m_am_tools, + TRACE_FLAGS_DEFAULT, + (EAPL("\n"))); + + EAP_TRACE_DATA_DEBUG( + m_am_tools, + TRACE_FLAGS_DEFAULT, + (EAPL("ERROR: CONFIG MESSAGE: option failed"), + selector.get_data(), + selector.get_data_length())); + + EAP_TRACE_DATA_DEBUG( + m_am_tools, + TRACE_FLAGS_DEFAULT, + (EAPL("ERROR: CONFIG MESSAGE: data"), + config->get_data()->get_data(), + config->get_data()->get_data_length())); + + EAP_TRACE_DEBUG( + m_am_tools, + TRACE_FLAGS_DEFAULT, + (EAPL("ERROR: CONFIG MESSAGE: option type %d=%s\n"), + config->get_type(), + eap_configuration_field_c::get_configure_type_string(config->get_type()))); + EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT); return EAP_STATUS_RETURN(m_am_tools, status); } @@ -2600,11 +2626,15 @@ } status = add_option(option_header); - if (status != eap_status_ok) + if (status != eap_status_ok + && status != eap_status_handler_exists_error // Here we skip duplicate configuration values. + ) { EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT); return EAP_STATUS_RETURN(m_am_tools, status); } + + status = eap_status_ok; } EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT);