X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fcoreidentity.cpp;h=5671ae80b2d38a4356dcb440586cb68e26a4248c;hp=f62411a9a944889969f7d396ac53db48e6152575;hb=c820e4b0bb1aeab59d65f9024301f468159e2337;hpb=9d54503555534a2c554f09a33df6afa33d6308ec diff --git a/src/core/coreidentity.cpp b/src/core/coreidentity.cpp index f62411a9..5671ae80 100644 --- a/src/core/coreidentity.cpp +++ b/src/core/coreidentity.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2014 by the Quassel Project * + * Copyright (C) 2005-2019 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -22,49 +22,45 @@ #include "signalproxy.h" -INIT_SYNCABLE_OBJECT(CoreIdentity) -CoreIdentity::CoreIdentity(IdentityId id, QObject *parent) +CoreIdentity::CoreIdentity(IdentityId id, QObject* parent) : Identity(id, parent) #ifdef HAVE_SSL - , _certManager(*this) + , _certManager(this) #endif { #ifdef HAVE_SSL - connect(this, SIGNAL(idSet(IdentityId)), &_certManager, SLOT(setId(IdentityId))); - connect(&_certManager, SIGNAL(updated()), this, SIGNAL(updated())); + connect(this, &Identity::idSet, &_certManager, &CoreCertManager::setId); + connect(&_certManager, &SyncableObject::updated, this, &SyncableObject::updated); #endif } - -CoreIdentity::CoreIdentity(const Identity &other, QObject *parent) +CoreIdentity::CoreIdentity(const Identity& other, QObject* parent) : Identity(other, parent) #ifdef HAVE_SSL - , _certManager(*this) + , _certManager(this) #endif { #ifdef HAVE_SSL - connect(this, SIGNAL(idSet(IdentityId)), &_certManager, SLOT(setId(IdentityId))); - connect(&_certManager, SIGNAL(updated()), this, SIGNAL(updated())); + connect(this, &Identity::idSet, &_certManager, &CoreCertManager::setId); + connect(&_certManager, &SyncableObject::updated, this, &SyncableObject::updated); #endif } - -CoreIdentity::CoreIdentity(const CoreIdentity &other, QObject *parent) +CoreIdentity::CoreIdentity(const CoreIdentity& other, QObject* parent) : Identity(other, parent) #ifdef HAVE_SSL - , _sslKey(other._sslKey), - _sslCert(other._sslCert), - _certManager(*this) + , _sslKey(other._sslKey) + , _sslCert(other._sslCert) + , _certManager(this) #endif { #ifdef HAVE_SSL - connect(this, SIGNAL(idSet(IdentityId)), &_certManager, SLOT(setId(IdentityId))); - connect(&_certManager, SIGNAL(updated()), this, SIGNAL(updated())); + connect(this, &Identity::idSet, &_certManager, &CoreCertManager::setId); + connect(&_certManager, &SyncableObject::updated, this, &SyncableObject::updated); #endif } - -void CoreIdentity::synchronize(SignalProxy *proxy) +void CoreIdentity::synchronize(SignalProxy* proxy) { proxy->synchronize(this); #ifdef HAVE_SSL @@ -72,67 +68,51 @@ void CoreIdentity::synchronize(SignalProxy *proxy) #endif } - #ifdef HAVE_SSL -void CoreIdentity::setSslKey(const QByteArray &encoded) +void CoreIdentity::setSslKey(const QByteArray& encoded) { QSslKey key(encoded, QSsl::Rsa); + if (key.isNull()) + key = QSslKey(encoded, QSsl::Ec); if (key.isNull()) key = QSslKey(encoded, QSsl::Dsa); setSslKey(key); } - -void CoreIdentity::setSslCert(const QByteArray &encoded) +void CoreIdentity::setSslCert(const QByteArray& encoded) { setSslCert(QSslCertificate(encoded)); } - -#endif - -CoreIdentity &CoreIdentity::operator=(const CoreIdentity &identity) -{ - Identity::operator=(identity); -#ifdef HAVE_SSL - _sslKey = identity._sslKey; - _sslCert = identity._sslCert; #endif - return *this; -} - #ifdef HAVE_SSL // ======================================== // CoreCertManager // ======================================== -INIT_SYNCABLE_OBJECT(CoreCertManager) -CoreCertManager::CoreCertManager(CoreIdentity &identity) - : CertManager(identity.id()), - identity(identity) + +CoreCertManager::CoreCertManager(CoreIdentity* identity) + : CertManager(identity->id()) + , _identity(identity) { setAllowClientUpdates(true); } - void CoreCertManager::setId(IdentityId id) { - renameObject(QString::number(id.toInt())); + setObjectName(QString::number(id.toInt())); } - -void CoreCertManager::setSslKey(const QByteArray &encoded) +void CoreCertManager::setSslKey(const QByteArray& encoded) { - identity.setSslKey(encoded); + _identity->setSslKey(encoded); CertManager::setSslKey(encoded); } - -void CoreCertManager::setSslCert(const QByteArray &encoded) +void CoreCertManager::setSslCert(const QByteArray& encoded) { - identity.setSslCert(encoded); + _identity->setSslCert(encoded); CertManager::setSslCert(encoded); } - -#endif //HAVE_SSL +#endif // HAVE_SSL