diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2009-06-21 10:41:50 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2009-06-21 10:41:50 +0000 |
| commit | 4cfe156aa74096d7fc8ff1aac4050efd5c10d96e (patch) | |
| tree | e969536d972898332ae7770a1227f724c76e0c12 /src/LibsslTLSContext.cc | |
| parent | a60ba71f1ea36c7bb62a49d324fa1046227dc540 (diff) | |
2009-06-21 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
In TLSContext::addClientKeyFile() and addTrustedCACertFile(),
handle excepion inside these functions.
* src/LibgnutlsTLSContext.cc
* src/LibgnutlsTLSContext.h
* src/LibsslTLSContext.cc
* src/LibsslTLSContext.h
* src/MultiUrlRequestInfo.cc
Diffstat (limited to 'src/LibsslTLSContext.cc')
| -rw-r--r-- | src/LibsslTLSContext.cc | 33 |
1 files changed, 17 insertions, 16 deletions
diff --git a/src/LibsslTLSContext.cc b/src/LibsslTLSContext.cc index ddcca08d..f0eb3366 100644 --- a/src/LibsslTLSContext.cc +++ b/src/LibsslTLSContext.cc @@ -73,33 +73,34 @@ bool TLSContext::bad() const return !_good; } -void TLSContext::addClientKeyFile(const std::string& certfile, +bool TLSContext::addClientKeyFile(const std::string& certfile, const std::string& keyfile) - throw(DlAbortEx) { if(SSL_CTX_use_PrivateKey_file(_sslCtx, keyfile.c_str(), SSL_FILETYPE_PEM) != 1) { - throw DL_ABORT_EX - (StringFormat - ("Failed to load client private key from %s. Cause: %s", - keyfile.c_str(), ERR_error_string(ERR_get_error(), 0)).str()); + _logger->error("Failed to load client private key from %s. Cause: %s", + keyfile.c_str(), ERR_error_string(ERR_get_error(), 0)); + return false; } if(SSL_CTX_use_certificate_chain_file(_sslCtx, certfile.c_str()) != 1) { - throw DL_ABORT_EX - (StringFormat - ("Failed to load client certificate from %s. Cause: %s", - certfile.c_str(), ERR_error_string(ERR_get_error(), 0)).str()); + _logger->error("Failed to load client certificate from %s. Cause: %s", + certfile.c_str(), ERR_error_string(ERR_get_error(), 0)); + return false; } + _logger->info("Client Key File(cert=%s, key=%s) were successfully added.", + certfile.c_str(), keyfile.c_str()); + return true; } -void TLSContext::addTrustedCACertFile(const std::string& certfile) - throw(DlAbortEx) +bool TLSContext::addTrustedCACertFile(const std::string& certfile) { if(SSL_CTX_load_verify_locations(_sslCtx, certfile.c_str(), 0) != 1) { - throw DL_ABORT_EX - (StringFormat - (MSG_LOADING_TRUSTED_CA_CERT_FAILED, - certfile.c_str(), ERR_error_string(ERR_get_error(), 0)).str()); + _logger->error(MSG_LOADING_TRUSTED_CA_CERT_FAILED, + certfile.c_str(), ERR_error_string(ERR_get_error(), 0)); + return false; + } else { + _logger->info("Trusted CA certificates were successfully added."); + return true; } } |
