X-Git-Url: http://www.project-moonshot.org/gitweb/?p=shibboleth%2Fcpp-xmltooling.git;a=blobdiff_plain;f=xmltooling%2FXMLToolingConfig.cpp;h=6925a230259d7a8026796f66eea1fb3126697141;hp=c255dca72d0b6ce193420d2627dc403ac34bb8e2;hb=HEAD;hpb=2e65468d4cb200611c0fd004279b17e4f234a1e4 diff --git a/xmltooling/XMLToolingConfig.cpp b/xmltooling/XMLToolingConfig.cpp index c255dca..6925a23 100644 --- a/xmltooling/XMLToolingConfig.cpp +++ b/xmltooling/XMLToolingConfig.cpp @@ -132,7 +132,7 @@ namespace { class TXFMOutputLog : public TXFMBase { TXFMOutputLog(); public: - TXFMOutputLog(DOMDocument* doc) : TXFMBase(doc), m_log(Category::getInstance(XMLTOOLING_LOGCAT".Signature.Debugger")) { + TXFMOutputLog(DOMDocument* doc) : TXFMBase(doc), m_log(Category::getInstance(XMLTOOLING_LOGCAT ".Signature.Debugger")) { input = nullptr; } ~TXFMOutputLog() { @@ -178,7 +178,7 @@ namespace { }; TXFMBase* TXFMOutputLogFactory(DOMDocument* doc) { - if (Category::getInstance(XMLTOOLING_LOGCAT".Signature.Debugger").isDebugEnabled()) + if (Category::getInstance(XMLTOOLING_LOGCAT ".Signature.Debugger").isDebugEnabled()) return new TXFMOutputLog(doc); return nullptr; } @@ -351,12 +351,12 @@ bool XMLToolingInternalConfig::log_config(const char* config) } #ifndef XMLTOOLING_NO_XMLSEC - Category::getInstance(XMLTOOLING_LOGCAT".Signature.Debugger").setAdditivity(false); + Category::getInstance(XMLTOOLING_LOGCAT ".Signature.Debugger").setAdditivity(false); #endif } catch (const ConfigureFailure& e) { string msg = string("error in file permissions or logging configuration: ") + e.what(); - Category::getInstance(XMLTOOLING_LOGCAT".Logging").crit(msg); + Category::getInstance(XMLTOOLING_LOGCAT ".Logging").crit(msg); #ifdef WIN32 LogEvent(nullptr, EVENTLOG_ERROR_TYPE, 2100, nullptr, msg.c_str()); #endif @@ -371,7 +371,7 @@ bool XMLToolingInternalConfig::init() #ifdef _DEBUG xmltooling::NDC ndc("init"); #endif - Category& log=Category::getInstance(XMLTOOLING_LOGCAT".Config"); + Category& log=Category::getInstance(XMLTOOLING_LOGCAT ".Config"); Lock initLock(m_lock); @@ -397,7 +397,9 @@ bool XMLToolingInternalConfig::init() if (curlver) { log.debug("libcurl %s initialization complete", curlver->version); if (!(curlver->features & CURL_VERSION_SSL)) { - log.warn("libcurl lacks TLS/SSL support, this will greatly limit functionality"); + log.crit("libcurl lacks TLS/SSL support, this will greatly limit functionality"); + } else if (curlver->ssl_version && !strstr(curlver->ssl_version, "OpenSSL")) { + log.crit("libcurl lacks OpenSSL-specific options, this will greatly limit functionality"); } } else { @@ -413,12 +415,15 @@ bool XMLToolingInternalConfig::init() # ifdef XMLTOOLING_XMLSEC_DEBUGLOGGING XSECPlatformUtils::SetReferenceLoggingSink(TXFMOutputLogFactory); # endif - m_xsecProvider=new XSECProvider(); + m_xsecProvider = new XSECProvider(); log.debug("XML-Security %s initialization complete", XSEC_FULLVERSIONDOT); #endif - m_parserPool=new ParserPool(); - m_validatingPool=new ParserPool(true,true); + m_parserPool = new ParserPool(); + m_validatingPool = new ParserPool(true,true); + + m_pathResolver = new PathResolver(); + m_urlEncoder = new URLEncoder(); // Load catalogs from deprecated path setting. if (!catalog_path.empty()) @@ -459,9 +464,6 @@ bool XMLToolingInternalConfig::init() registerSOAPTransports(); initSOAPTransports(); - m_pathResolver = new PathResolver(); - m_urlEncoder = new URLEncoder(); - HTTPResponse::getAllowedSchemes().push_back("https"); HTTPResponse::getAllowedSchemes().push_back("http"); @@ -500,7 +502,7 @@ void XMLToolingInternalConfig::term() Lock initLock(m_lock); if (m_initCount == 0) { - Category::getInstance(XMLTOOLING_LOGCAT".Config").crit("term without corresponding init"); + Category::getInstance(XMLTOOLING_LOGCAT ".Config").crit("term without corresponding init"); return; } else if (--m_initCount > 0) { @@ -582,7 +584,7 @@ void XMLToolingInternalConfig::term() #ifndef XMLTOOLING_NO_XMLSEC curl_global_cleanup(); #endif - Category::getInstance(XMLTOOLING_LOGCAT".Config").info("%s library shutdown complete", PACKAGE_STRING); + Category::getInstance(XMLTOOLING_LOGCAT ".Config").info("%s library shutdown complete", PACKAGE_STRING); } Lockable* XMLToolingInternalConfig::lock() @@ -612,7 +614,7 @@ bool XMLToolingInternalConfig::load_library(const char* path, void* context) #ifdef _DEBUG xmltooling::NDC ndc("LoadLibrary"); #endif - Category& log=Category::getInstance(XMLTOOLING_LOGCAT".Config"); + Category& log=Category::getInstance(XMLTOOLING_LOGCAT ".Config"); log.info("loading extension: %s", path); Locker locker(this); @@ -822,6 +824,12 @@ void XMLToolingInternalConfig::registerXMLAlgorithms() registerXMLAlgorithm(DSIGConstants::s_unicodeStrURIAES256_CBC, "AES", 256, ALGTYPE_ENCRYPT); registerXMLAlgorithm(DSIGConstants::s_unicodeStrURIKW_AES256, "AES", 256, ALGTYPE_KEYENCRYPT); + +# ifdef URI_ID_KW_AES128_PAD + registerXMLAlgorithm(DSIGConstants::s_unicodeStrURIKW_AES128_PAD, "AES", 128, ALGTYPE_KEYENCRYPT); + registerXMLAlgorithm(DSIGConstants::s_unicodeStrURIKW_AES192_PAD, "AES", 192, ALGTYPE_KEYENCRYPT); + registerXMLAlgorithm(DSIGConstants::s_unicodeStrURIKW_AES256_PAD, "AES", 256, ALGTYPE_KEYENCRYPT); +# endif #endif #ifdef XSEC_OPENSSL_HAVE_GCM