From f9913fa28a27f23fde2d4956c62cbb2fb2bc2ee8 Mon Sep 17 00:00:00 2001 From: Vincent Richard Date: Thu, 21 Nov 2013 22:16:57 +0100 Subject: Boost/C++11 shared pointers. --- src/security/cert/certificateChain.cpp | 4 +-- src/security/cert/defaultCertificateVerifier.cpp | 32 +++++++++++----------- .../cert/gnutls/X509Certificate_GnuTLS.cpp | 28 +++++++++---------- .../cert/openssl/X509Certificate_OpenSSL.cpp | 32 +++++++++++----------- src/security/defaultAuthenticator.cpp | 8 +++--- src/security/digest/messageDigestFactory.cpp | 2 +- src/security/sasl/SASLContext.cpp | 24 ++++++++-------- src/security/sasl/SASLMechanismFactory.cpp | 8 +++--- src/security/sasl/SASLSession.cpp | 26 +++++++++--------- src/security/sasl/SASLSocket.cpp | 2 +- src/security/sasl/builtinSASLMechanism.cpp | 8 +++--- src/security/sasl/defaultSASLAuthenticator.cpp | 24 ++++++++-------- 12 files changed, 99 insertions(+), 99 deletions(-) (limited to 'src/security') diff --git a/src/security/cert/certificateChain.cpp b/src/security/cert/certificateChain.cpp index ab12453e..3cb4e360 100644 --- a/src/security/cert/certificateChain.cpp +++ b/src/security/cert/certificateChain.cpp @@ -29,7 +29,7 @@ namespace security { namespace cert { -certificateChain::certificateChain(const std::vector >& certs) +certificateChain::certificateChain(const std::vector >& certs) : m_certs(certs) { } @@ -41,7 +41,7 @@ unsigned int certificateChain::getCount() const } -ref certificateChain::getAt(const unsigned int index) +shared_ptr certificateChain::getAt(const unsigned int index) { return m_certs[index]; } diff --git a/src/security/cert/defaultCertificateVerifier.cpp b/src/security/cert/defaultCertificateVerifier.cpp index bb185f36..1a95b353 100644 --- a/src/security/cert/defaultCertificateVerifier.cpp +++ b/src/security/cert/defaultCertificateVerifier.cpp @@ -55,7 +55,7 @@ defaultCertificateVerifier::defaultCertificateVerifier(const defaultCertificateV void defaultCertificateVerifier::verify - (ref chain, const string& hostname) + (shared_ptr chain, const string& hostname) { if (chain->getCount() == 0) return; @@ -70,7 +70,7 @@ void defaultCertificateVerifier::verify void defaultCertificateVerifier::verifyX509 - (ref chain, const string& hostname) + (shared_ptr chain, const string& hostname) { // For every certificate in the chain, verify that the certificate // has been issued by the next certificate in the chain @@ -78,11 +78,11 @@ void defaultCertificateVerifier::verifyX509 { for (unsigned int i = 0 ; i < chain->getCount() - 1 ; ++i) { - ref cert = - chain->getAt(i).dynamicCast (); + shared_ptr cert = + dynamicCast (chain->getAt(i)); - ref next = - chain->getAt(i + 1).dynamicCast (); + shared_ptr next = + dynamicCast (chain->getAt(i + 1)); if (!cert->checkIssuer(next)) { @@ -98,8 +98,8 @@ void defaultCertificateVerifier::verifyX509 for (unsigned int i = 0 ; i < chain->getCount() ; ++i) { - ref cert = - chain->getAt(i).dynamicCast (); + shared_ptr cert = + dynamicCast (chain->getAt(i)); const datetime begin = cert->getActivationDate(); const datetime end = cert->getExpirationDate(); @@ -115,14 +115,14 @@ void defaultCertificateVerifier::verifyX509 // -- First, verify that the the last certificate in the chain was // -- issued by a third-party that we trust - ref lastCert = - chain->getAt(chain->getCount() - 1).dynamicCast (); + shared_ptr lastCert = + dynamicCast (chain->getAt(chain->getCount() - 1)); bool trusted = false; for (unsigned int i = 0 ; !trusted && i < m_x509RootCAs.size() ; ++i) { - ref rootCa = m_x509RootCAs[i]; + shared_ptr rootCa = m_x509RootCAs[i]; if (lastCert->verify(rootCa)) trusted = true; @@ -131,12 +131,12 @@ void defaultCertificateVerifier::verifyX509 // -- Next, if the issuer certificate cannot be verified against // -- root CAs, compare the subject's certificate against the // -- trusted certificates - ref firstCert = - chain->getAt(0).dynamicCast (); + shared_ptr firstCert = + dynamicCast (chain->getAt(0)); for (unsigned int i = 0 ; !trusted && i < m_x509TrustedCerts.size() ; ++i) { - ref cert = m_x509TrustedCerts[i]; + shared_ptr cert = m_x509TrustedCerts[i]; if (firstCert->equals(cert)) trusted = true; @@ -158,14 +158,14 @@ void defaultCertificateVerifier::verifyX509 void defaultCertificateVerifier::setX509RootCAs - (const std::vector >& caCerts) + (const std::vector >& caCerts) { m_x509RootCAs = caCerts; } void defaultCertificateVerifier::setX509TrustedCerts - (const std::vector >& trustedCerts) + (const std::vector >& trustedCerts) { m_x509TrustedCerts = trustedCerts; } diff --git a/src/security/cert/gnutls/X509Certificate_GnuTLS.cpp b/src/security/cert/gnutls/X509Certificate_GnuTLS.cpp index 96137844..327ddefa 100644 --- a/src/security/cert/gnutls/X509Certificate_GnuTLS.cpp +++ b/src/security/cert/gnutls/X509Certificate_GnuTLS.cpp @@ -89,7 +89,7 @@ void* X509Certificate_GnuTLS::getInternalData() // static -ref X509Certificate::import(utility::inputStream& is) +shared_ptr X509Certificate::import(utility::inputStream& is) { byteArray bytes; utility::stream::value_type chunk[4096]; @@ -105,7 +105,7 @@ ref X509Certificate::import(utility::inputStream& is) // static -ref X509Certificate::import +shared_ptr X509Certificate::import (const byte_t* data, const size_t length) { gnutls_datum buffer; @@ -113,18 +113,18 @@ ref X509Certificate::import buffer.size = static_cast (length); // Try DER format - ref derCert = vmime::create (); + shared_ptr derCert = make_shared (); if (gnutls_x509_crt_import(derCert->m_data->cert, &buffer, GNUTLS_X509_FMT_DER) >= 0) return derCert; // Try PEM format - ref pemCert = vmime::create (); + shared_ptr pemCert = make_shared (); if (gnutls_x509_crt_import(pemCert->m_data->cert, &buffer, GNUTLS_X509_FMT_PEM) >= 0) return pemCert; - return NULL; + return null; } @@ -161,20 +161,20 @@ const byteArray X509Certificate_GnuTLS::getSerialNumber() const } -bool X509Certificate_GnuTLS::checkIssuer(ref issuer_) const +bool X509Certificate_GnuTLS::checkIssuer(shared_ptr issuer_) const { - ref issuer = - issuer_.dynamicCast (); + shared_ptr issuer = + dynamicCast (issuer_); return (gnutls_x509_crt_check_issuer (m_data->cert, issuer->m_data->cert) >= 1); } -bool X509Certificate_GnuTLS::verify(ref caCert_) const +bool X509Certificate_GnuTLS::verify(shared_ptr caCert_) const { - ref caCert = - caCert_.dynamicCast (); + shared_ptr caCert = + dynamicCast (caCert_); unsigned int verify = 0; @@ -267,10 +267,10 @@ int X509Certificate_GnuTLS::getVersion() const } -bool X509Certificate_GnuTLS::equals(ref other) const +bool X509Certificate_GnuTLS::equals(shared_ptr other) const { - ref otherX509 = - other.dynamicCast (); + shared_ptr otherX509 = + dynamicCast (other); if (!otherX509) return false; diff --git a/src/security/cert/openssl/X509Certificate_OpenSSL.cpp b/src/security/cert/openssl/X509Certificate_OpenSSL.cpp index 8c18583b..8c7174a0 100644 --- a/src/security/cert/openssl/X509Certificate_OpenSSL.cpp +++ b/src/security/cert/openssl/X509Certificate_OpenSSL.cpp @@ -158,17 +158,17 @@ void* X509Certificate_OpenSSL::getInternalData() // static -ref X509Certificate_OpenSSL::importInternal(X509* cert) +shared_ptr X509Certificate_OpenSSL::importInternal(X509* cert) { if (cert) - return vmime::create (reinterpret_cast (cert)); + return make_shared (reinterpret_cast (cert)); - return NULL; + return null; } // static -ref X509Certificate::import(utility::inputStream& is) +shared_ptr X509Certificate::import(utility::inputStream& is) { byteArray bytes; utility::stream::value_type chunk[4096]; @@ -184,17 +184,17 @@ ref X509Certificate::import(utility::inputStream& is) // static -ref X509Certificate::import +shared_ptr X509Certificate::import (const byte_t* data, const size_t length) { - ref cert = vmime::create (); + shared_ptr cert = make_shared (); BIO* membio = BIO_new_mem_buf(const_cast (data), length); if (!PEM_read_bio_X509(membio, &(cert->m_data->cert), 0, 0)) { BIO_vfree(membio); - return NULL; + return null; } BIO_vfree(membio); @@ -270,10 +270,10 @@ const byteArray X509Certificate_OpenSSL::getSerialNumber() const } -bool X509Certificate_OpenSSL::checkIssuer(ref cert_) const +bool X509Certificate_OpenSSL::checkIssuer(shared_ptr cert_) const { - ref cert = - cert_.dynamicCast (); + shared_ptr cert = + dynamicCast (cert_); // Get issuer for this cert BIO *out; @@ -297,10 +297,10 @@ bool X509Certificate_OpenSSL::checkIssuer(ref cert_) con } -bool X509Certificate_OpenSSL::verify(ref caCert_) const +bool X509Certificate_OpenSSL::verify(shared_ptr caCert_) const { - ref caCert = - caCert_.dynamicCast (); + shared_ptr caCert = + dynamicCast (caCert_); bool verified = false; @@ -550,10 +550,10 @@ int X509Certificate_OpenSSL::getVersion() const } -bool X509Certificate_OpenSSL::equals(ref other) const +bool X509Certificate_OpenSSL::equals(shared_ptr other) const { - ref otherX509 = - other.dynamicCast (); + shared_ptr otherX509 = + dynamicCast (other); if (!otherX509) return false; diff --git a/src/security/defaultAuthenticator.cpp b/src/security/defaultAuthenticator.cpp index a2ff37f9..790196d2 100644 --- a/src/security/defaultAuthenticator.cpp +++ b/src/security/defaultAuthenticator.cpp @@ -50,7 +50,7 @@ defaultAuthenticator::~defaultAuthenticator() const string defaultAuthenticator::getUsername() const { - ref service = m_service.acquire(); + shared_ptr service = m_service.lock(); const string prefix = service->getInfos().getPropertyPrefix(); const propertySet& props = service->getSession()->getProperties(); @@ -64,7 +64,7 @@ const string defaultAuthenticator::getUsername() const const string defaultAuthenticator::getPassword() const { - ref service = m_service.acquire(); + shared_ptr service = m_service.lock(); const string prefix = service->getInfos().getPropertyPrefix(); const propertySet& props = service->getSession()->getProperties(); @@ -95,13 +95,13 @@ const string defaultAuthenticator::getServiceName() const } -void defaultAuthenticator::setService(ref serv) +void defaultAuthenticator::setService(shared_ptr serv) { m_service = serv; } -weak_ref defaultAuthenticator::getService() const +weak_ptr defaultAuthenticator::getService() const { return m_service; } diff --git a/src/security/digest/messageDigestFactory.cpp b/src/security/digest/messageDigestFactory.cpp index 6d424155..2831c5a1 100644 --- a/src/security/digest/messageDigestFactory.cpp +++ b/src/security/digest/messageDigestFactory.cpp @@ -52,7 +52,7 @@ messageDigestFactory* messageDigestFactory::getInstance() } -ref messageDigestFactory::create(const string& name) +shared_ptr messageDigestFactory::create(const string& name) { const MapType::const_iterator it = m_algos.find (utility::stringUtils::toLower(name)); diff --git a/src/security/sasl/SASLContext.cpp b/src/security/sasl/SASLContext.cpp index 7b24f1e3..c4d60bd9 100644 --- a/src/security/sasl/SASLContext.cpp +++ b/src/security/sasl/SASLContext.cpp @@ -62,27 +62,27 @@ SASLContext::~SASLContext() } -ref SASLContext::createSession +shared_ptr SASLContext::createSession (const string& serviceName, - ref auth, ref mech) + shared_ptr auth, shared_ptr mech) { - return vmime::create - (serviceName, thisRef().dynamicCast (), auth, mech); + return make_shared + (serviceName, dynamicCast (shared_from_this()), auth, mech); } -ref SASLContext::createMechanism(const string& name) +shared_ptr SASLContext::createMechanism(const string& name) { return SASLMechanismFactory::getInstance()->create - (thisRef().dynamicCast (), name); + (dynamicCast (shared_from_this()), name); } -ref SASLContext::suggestMechanism - (const std::vector >& mechs) +shared_ptr SASLContext::suggestMechanism + (const std::vector >& mechs) { if (mechs.empty()) - return 0; + return null; std::ostringstream oss; @@ -102,7 +102,7 @@ ref SASLContext::suggestMechanism } } - return 0; + return null; } @@ -113,7 +113,7 @@ void SASLContext::decodeB64(const string& input, byte_t** output, long* outputLe utility::inputStreamStringAdapter is(input); utility::outputStreamStringAdapter os(res); - ref dec = + shared_ptr dec = utility::encoder::encoderFactory::getInstance()->create("base64"); dec->decode(is, os); @@ -134,7 +134,7 @@ const string SASLContext::encodeB64(const byte_t* input, const long inputLen) utility::inputStreamByteBufferAdapter is(input, inputLen); utility::outputStreamStringAdapter os(res); - ref enc = + shared_ptr enc = utility::encoder::encoderFactory::getInstance()->create("base64"); enc->encode(is, os); diff --git a/src/security/sasl/SASLMechanismFactory.cpp b/src/security/sasl/SASLMechanismFactory.cpp index 0f2dd3af..255a13f1 100644 --- a/src/security/sasl/SASLMechanismFactory.cpp +++ b/src/security/sasl/SASLMechanismFactory.cpp @@ -68,15 +68,15 @@ SASLMechanismFactory* SASLMechanismFactory::getInstance() } -ref SASLMechanismFactory::create - (ref ctx, const string& name_) +shared_ptr SASLMechanismFactory::create + (shared_ptr ctx, const string& name_) { const string name(utility::stringUtils::toUpper(name_)); // Check for built-in mechanisms if (isMechanismSupported(name)) { - return vmime::create (ctx, name); + return make_shared (ctx, name); } // Check for registered mechanisms else @@ -88,7 +88,7 @@ ref SASLMechanismFactory::create } throw exceptions::no_such_mechanism(name); - return 0; + return null; } diff --git a/src/security/sasl/SASLSession.cpp b/src/security/sasl/SASLSession.cpp index c34bdd7f..1bdd0889 100644 --- a/src/security/sasl/SASLSession.cpp +++ b/src/security/sasl/SASLSession.cpp @@ -43,8 +43,8 @@ namespace security { namespace sasl { -SASLSession::SASLSession(const string& serviceName, ref ctx, - ref auth, ref mech) +SASLSession::SASLSession(const string& serviceName, shared_ptr ctx, + shared_ptr auth, shared_ptr mech) : m_serviceName(serviceName), m_context(ctx), m_auth(auth), m_mech(mech), m_gsaslContext(0), m_gsaslSession(0) { @@ -61,38 +61,38 @@ SASLSession::SASLSession(const string& serviceName, ref ctx, SASLSession::~SASLSession() { gsasl_finish(m_gsaslSession); - m_gsaslSession = 0; + m_gsaslSession = NULL; gsasl_done(m_gsaslContext); - m_gsaslContext = 0; + m_gsaslContext = NULL; } void SASLSession::init() { - ref saslAuth = m_auth.dynamicCast (); + shared_ptr saslAuth = dynamicCast (m_auth); if (saslAuth) { saslAuth->setSASLMechanism(m_mech); - saslAuth->setSASLSession(thisRef().dynamicCast ()); + saslAuth->setSASLSession(dynamicCast (shared_from_this())); } } -ref SASLSession::getAuthenticator() +shared_ptr SASLSession::getAuthenticator() { return m_auth; } -ref SASLSession::getMechanism() +shared_ptr SASLSession::getMechanism() { return m_mech; } -ref SASLSession::getContext() +shared_ptr SASLSession::getContext() { return m_context; } @@ -102,14 +102,14 @@ bool SASLSession::evaluateChallenge (const byte_t* challenge, const long challengeLen, byte_t** response, long* responseLen) { - return m_mech->step(thisRef().dynamicCast (), + return m_mech->step(dynamicCast (shared_from_this()), challenge, challengeLen, response, responseLen); } -ref SASLSession::getSecuredSocket(ref sok) +shared_ptr SASLSession::getSecuredSocket(shared_ptr sok) { - return vmime::create (thisRef().dynamicCast (), sok); + return make_shared (dynamicCast (shared_from_this()), sok); } @@ -126,7 +126,7 @@ int SASLSession::gsaslCallback SASLSession* sess = reinterpret_cast (gsasl_callback_hook_get(ctx)); if (!sess) return GSASL_AUTHENTICATION_ERROR; - ref auth = sess->getAuthenticator(); + shared_ptr auth = sess->getAuthenticator(); try { diff --git a/src/security/sasl/SASLSocket.cpp b/src/security/sasl/SASLSocket.cpp index b6b1d272..37e297dc 100644 --- a/src/security/sasl/SASLSocket.cpp +++ b/src/security/sasl/SASLSocket.cpp @@ -43,7 +43,7 @@ namespace sasl { -SASLSocket::SASLSocket(ref sess, ref wrapped) +SASLSocket::SASLSocket(shared_ptr sess, shared_ptr wrapped) : m_session(sess), m_wrapped(wrapped), m_pendingBuffer(0), m_pendingPos(0), m_pendingLen(0) { diff --git a/src/security/sasl/builtinSASLMechanism.cpp b/src/security/sasl/builtinSASLMechanism.cpp index 86b429bf..e7bd723e 100644 --- a/src/security/sasl/builtinSASLMechanism.cpp +++ b/src/security/sasl/builtinSASLMechanism.cpp @@ -45,7 +45,7 @@ namespace security { namespace sasl { -builtinSASLMechanism::builtinSASLMechanism(ref ctx, const string& name) +builtinSASLMechanism::builtinSASLMechanism(shared_ptr ctx, const string& name) : m_context(ctx), m_name(name), m_complete(false) { } @@ -63,7 +63,7 @@ const string builtinSASLMechanism::getName() const bool builtinSASLMechanism::step - (ref sess, const byte_t* challenge, const long challengeLen, + (shared_ptr sess, const byte_t* challenge, const long challengeLen, byte_t** response, long* responseLen) { char* output = 0; @@ -121,7 +121,7 @@ bool builtinSASLMechanism::isComplete() const void builtinSASLMechanism::encode - (ref sess, const byte_t* input, const long inputLen, + (shared_ptr sess, const byte_t* input, const long inputLen, byte_t** output, long* outputLen) { char* coutput = 0; @@ -154,7 +154,7 @@ void builtinSASLMechanism::encode void builtinSASLMechanism::decode - (ref sess, const byte_t* input, const long inputLen, + (shared_ptr sess, const byte_t* input, const long inputLen, byte_t** output, long* outputLen) { char* coutput = 0; diff --git a/src/security/sasl/defaultSASLAuthenticator.cpp b/src/security/sasl/defaultSASLAuthenticator.cpp index bb72e56f..7fe9b3eb 100644 --- a/src/security/sasl/defaultSASLAuthenticator.cpp +++ b/src/security/sasl/defaultSASLAuthenticator.cpp @@ -51,14 +51,14 @@ defaultSASLAuthenticator::~defaultSASLAuthenticator() } -const std::vector > +const std::vector > defaultSASLAuthenticator::getAcceptableMechanisms - (const std::vector >& available, - ref suggested) const + (const std::vector >& available, + shared_ptr suggested) const { if (suggested) { - std::vector > res; + std::vector > res; res.push_back(suggested); @@ -103,42 +103,42 @@ const string defaultSASLAuthenticator::getAnonymousToken() const const string defaultSASLAuthenticator::getServiceName() const { - return m_saslSession.acquire()->getServiceName(); + return m_saslSession.lock()->getServiceName(); } -void defaultSASLAuthenticator::setService(ref serv) +void defaultSASLAuthenticator::setService(shared_ptr serv) { m_service = serv; m_default.setService(serv); } -weak_ref defaultSASLAuthenticator::getService() const +weak_ptr defaultSASLAuthenticator::getService() const { return m_service; } -void defaultSASLAuthenticator::setSASLSession(ref sess) +void defaultSASLAuthenticator::setSASLSession(shared_ptr sess) { m_saslSession = sess; } -ref defaultSASLAuthenticator::getSASLSession() const +shared_ptr defaultSASLAuthenticator::getSASLSession() const { - return m_saslSession.acquire().constCast (); + return constCast (m_saslSession.lock()); } -void defaultSASLAuthenticator::setSASLMechanism(ref mech) +void defaultSASLAuthenticator::setSASLMechanism(shared_ptr mech) { m_saslMech = mech; } -ref defaultSASLAuthenticator::getSASLMechanism() const +shared_ptr defaultSASLAuthenticator::getSASLMechanism() const { return m_saslMech; } -- cgit v1.2.3