bool applyConfiguration( const ItalcConfiguration &c ) { // merge configuration *ItalcCore::config += c; // do neccessary modifications of system configuration if( !SystemConfigurationModifier::setServiceAutostart( ItalcCore::config->autostartService() ) ) { configApplyError( MainWindow::tr( "Could not modify the autostart property " "for the iTALC Service." ) ); } if( !SystemConfigurationModifier::setServiceArguments( ItalcCore::config->serviceArguments() ) ) { configApplyError( MainWindow::tr( "Could not modify the service arguments " "for the iTALC Service." ) ); } if( !SystemConfigurationModifier::enableFirewallException( ItalcCore::config->isFirewallExceptionEnabled() ) ) { configApplyError( MainWindow::tr( "Could not change the firewall configuration " "for the iTALC Service." ) ); } #ifdef ITALC_BUILD_WIN32 ItalcCore::config->removeValue( "LogonACL", "Authentication" ); // if EncodedLogonACL is empty, nothing is done in setACL() LogonAclSettings().setACL( ItalcCore::config->value( "EncodedLogonACL", "Authentication" ) ); #endif // write global configuration Configuration::LocalStore localStore( Configuration::LocalStore::System ); localStore.flush( ItalcCore::config ); return true; }
CommandLinePluginInterface::RunResult LdapPlugin::handle_autoconfigurebasedn( const QStringList& arguments ) { QUrl ldapUrl; ldapUrl.setUrl( arguments.value( 0 ), QUrl::StrictMode ); if( ldapUrl.isValid() == false || ldapUrl.host().isEmpty() ) { qCritical() << "Please specify a valid LDAP url following the schema \"ldap[s]://[user[:password]@]hostname[:port]\""; return InvalidArguments; } QString namingContextAttribute = arguments.value( 1 ); if( namingContextAttribute.isEmpty() ) { qWarning( "No naming context attribute name given - falling back to configured value." ); } else { m_configuration.setLdapNamingContextAttribute( namingContextAttribute ); } LdapDirectory ldapDirectory( m_configuration, ldapUrl ); QString baseDn = ldapDirectory.queryNamingContext(); if( baseDn.isEmpty() ) { qCritical( "Could not query base DN. Please check your LDAP configuration." ); return Failed; } qInfo() << "Configuring" << baseDn << "as base DN and disabling naming context queries."; m_configuration.setLdapBaseDn( baseDn ); m_configuration.setLdapQueryNamingContext( false ); // write configuration Configuration::LocalStore localStore( Configuration::LocalStore::System ); localStore.flush( &VeyonCore::config() ); return Successful; }
Key *Process::makeTemporaryKey(const CssmKey &key, CSSM_KEYATTR_FLAGS moreAttributes, const AclEntryPrototype *owner) { return safer_cast<TempDatabase&>(localStore()).makeKey(key, moreAttributes, owner); }