RemoteDatabase::RemoteDatabase() : m_manager(new QNetworkAccessManager), m_configurationManager(new QNetworkConfigurationManager), m_progress(nullptr), m_dbLocal(nullptr) { // Update network configurations connect(m_configurationManager, &QNetworkConfigurationManager::updateCompleted, [this]() { m_manager->setConfiguration(m_configurationManager->defaultConfiguration()); emit networkReady(); }); // Set up SSL configuration m_sslConfiguration = QSslConfiguration::defaultConfiguration(); m_sslConfiguration.setPeerVerifyMode(QSslSocket::VerifyPeer); // Load CA certs from resource file QDir dirCaCerts(":/certs"); QStringList caCertsList = dirCaCerts.entryList(); QList<QSslCertificate> caCerts; for(const QString& caCertName : caCertsList) caCerts += QSslCertificate::fromPath(":/certs/" + caCertName); m_sslConfiguration.setCaCertificates(caCerts); // Load settings and set up some more stuff while doing so reloadSettings(); // Set up signals connect(m_manager, &QNetworkAccessManager::finished, this, &RemoteDatabase::gotReply); connect(m_manager, &QNetworkAccessManager::encrypted, this, &RemoteDatabase::gotEncrypted); connect(m_manager, &QNetworkAccessManager::sslErrors, this, &RemoteDatabase::gotError); }
void IrcConnectionWizard::networkReady(NetworkId id) { disconnect(Client::instance(), SIGNAL(networkCreated(NetworkId)), this, SLOT(networkReady(NetworkId))); const Network *net = Client::network(id); Q_ASSERT(net); net->requestConnect(); deleteLater(); }
void IrcConnectionWizard::identityReady(IdentityId id) { disconnect(Client::instance(), SIGNAL(identityCreated(IdentityId)), this, SLOT(identityReady(IdentityId))); NetworkPage *networkPage = static_cast<NetworkPage *>(_networkPage); NetworkInfo networkInfo = networkPage->networkInfo(); QStringList channels = networkPage->channelList(); networkInfo.identity = id; connect(Client::instance(), SIGNAL(networkCreated(NetworkId)), this, SLOT(networkReady(NetworkId))); Client::createNetwork(networkInfo, channels); }