Fix mess from 59c5fc9d6498a4aa15cd4e75a3a9d04ccb0316b1
This commit is contained in:
parent
75c226a1ef
commit
f637189b90
@ -92,6 +92,7 @@ void eap::config_method_ttls::save(_In_ IXMLDOMDocument *pDoc, _In_ IXMLDOMNode
|
|||||||
|
|
||||||
HRESULT hr;
|
HRESULT hr;
|
||||||
|
|
||||||
|
{
|
||||||
// <ClientSideCredential>
|
// <ClientSideCredential>
|
||||||
com_obj<IXMLDOMElement> pXmlElClientSideCredential;
|
com_obj<IXMLDOMElement> pXmlElClientSideCredential;
|
||||||
if (FAILED(hr = eapxml::create_element(pDoc, pConfigRoot, bstr(L"eap-metadata:ClientSideCredential"), bstr(L"ClientSideCredential"), namespace_eapmetadata, pXmlElClientSideCredential)))
|
if (FAILED(hr = eapxml::create_element(pDoc, pConfigRoot, bstr(L"eap-metadata:ClientSideCredential"), bstr(L"ClientSideCredential"), namespace_eapmetadata, pXmlElClientSideCredential)))
|
||||||
@ -101,6 +102,7 @@ void eap::config_method_ttls::save(_In_ IXMLDOMDocument *pDoc, _In_ IXMLDOMNode
|
|||||||
if (!m_anonymous_identity.empty())
|
if (!m_anonymous_identity.empty())
|
||||||
if (FAILED(hr = eapxml::put_element_value(pDoc, pXmlElClientSideCredential, bstr(L"AnonymousIdentity"), namespace_eapmetadata, bstr(m_anonymous_identity))))
|
if (FAILED(hr = eapxml::put_element_value(pDoc, pXmlElClientSideCredential, bstr(L"AnonymousIdentity"), namespace_eapmetadata, bstr(m_anonymous_identity))))
|
||||||
throw com_runtime_error(hr, __FUNCTION__ " Error creating <AnonymousIdentity> element.");
|
throw com_runtime_error(hr, __FUNCTION__ " Error creating <AnonymousIdentity> element.");
|
||||||
|
}
|
||||||
|
|
||||||
// <InnerAuthenticationMethod>
|
// <InnerAuthenticationMethod>
|
||||||
com_obj<IXMLDOMElement> pXmlElInnerAuthenticationMethod;
|
com_obj<IXMLDOMElement> pXmlElInnerAuthenticationMethod;
|
||||||
@ -121,6 +123,9 @@ void eap::config_method_ttls::save(_In_ IXMLDOMDocument *pDoc, _In_ IXMLDOMNode
|
|||||||
// <InnerAuthenticationMethod>/...
|
// <InnerAuthenticationMethod>/...
|
||||||
m_inner->save(pDoc, pXmlElInnerAuthenticationMethod);
|
m_inner->save(pDoc, pXmlElInnerAuthenticationMethod);
|
||||||
|
|
||||||
|
{
|
||||||
|
com_obj<IXMLDOMNode> pXmlElClientSideCredential;
|
||||||
|
if (SUCCEEDED(hr = eapxml::select_node(pConfigRoot, bstr(L"eap-metadata:ClientSideCredential"), pXmlElClientSideCredential))) {
|
||||||
// Fix 1: Configured outer credentials in draft-winter-opsawg-eap-metadata has some bizarre presence/absence/blank logic for EAP-TTLS methods only.
|
// Fix 1: Configured outer credentials in draft-winter-opsawg-eap-metadata has some bizarre presence/absence/blank logic for EAP-TTLS methods only.
|
||||||
// To keep our code clean, we do some post-processing, to make draft compliant XML on output, while keeping things simple on the inside.
|
// To keep our code clean, we do some post-processing, to make draft compliant XML on output, while keeping things simple on the inside.
|
||||||
if (m_use_cred && m_cred->empty()) {
|
if (m_use_cred && m_cred->empty()) {
|
||||||
@ -135,6 +140,8 @@ void eap::config_method_ttls::save(_In_ IXMLDOMDocument *pDoc, _In_ IXMLDOMNode
|
|||||||
com_obj<IXMLDOMElement> pXmlElClientCertificate;
|
com_obj<IXMLDOMElement> pXmlElClientCertificate;
|
||||||
hr = eapxml::create_element(pDoc, pXmlElClientSideCredential, bstr(L"eap-metadata:ClientCertificate"), bstr(L"ClientCertificate"), namespace_eapmetadata, pXmlElClientCertificate);
|
hr = eapxml::create_element(pDoc, pXmlElClientSideCredential, bstr(L"eap-metadata:ClientCertificate"), bstr(L"ClientCertificate"), namespace_eapmetadata, pXmlElClientCertificate);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -173,6 +180,7 @@ void eap::config_method_ttls::load(_In_ IXMLDOMNode *pConfigRoot)
|
|||||||
|
|
||||||
m_anonymous_identity.clear();
|
m_anonymous_identity.clear();
|
||||||
|
|
||||||
|
{
|
||||||
// <ClientSideCredential>
|
// <ClientSideCredential>
|
||||||
com_obj<IXMLDOMElement> pXmlElClientSideCredential;
|
com_obj<IXMLDOMElement> pXmlElClientSideCredential;
|
||||||
if (SUCCEEDED(eapxml::select_element(pConfigRoot, bstr(L"eap-metadata:ClientSideCredential"), pXmlElClientSideCredential))) {
|
if (SUCCEEDED(eapxml::select_element(pConfigRoot, bstr(L"eap-metadata:ClientSideCredential"), pXmlElClientSideCredential))) {
|
||||||
@ -182,6 +190,7 @@ void eap::config_method_ttls::load(_In_ IXMLDOMNode *pConfigRoot)
|
|||||||
eapxml::get_element_value(pXmlElClientSideCredential, bstr(L"eap-metadata:AnonymousIdentity"), m_anonymous_identity);
|
eapxml::get_element_value(pXmlElClientSideCredential, bstr(L"eap-metadata:AnonymousIdentity"), m_anonymous_identity);
|
||||||
m_module.log_config((xpathClientSideCredential + L"/AnonymousIdentity").c_str(), m_anonymous_identity.c_str());
|
m_module.log_config((xpathClientSideCredential + L"/AnonymousIdentity").c_str(), m_anonymous_identity.c_str());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// <InnerAuthenticationMethod>
|
// <InnerAuthenticationMethod>
|
||||||
com_obj<IXMLDOMElement> pXmlElInnerAuthenticationMethod;
|
com_obj<IXMLDOMElement> pXmlElInnerAuthenticationMethod;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user