diff options
author | Xianda Wang <wxianda@gmail.com> | 2020-08-06 14:35:30 +0800 |
---|---|---|
committer | Like Ma <likemartinma@gmail.com> | 2020-08-12 20:06:08 +0800 |
commit | 95b82661ac2d9438f012494472ed42d73591af1a (patch) | |
tree | d404f082498586a49940864595d97a6271468419 /ACE/ace/SSL | |
parent | ed385706374786ee45bdc220c52d6e56869e2992 (diff) | |
download | ATCD-95b82661ac2d9438f012494472ed42d73591af1a.tar.gz |
Avoid crash when SSL not initialized correctly.
Diffstat (limited to 'ACE/ace/SSL')
-rw-r--r-- | ACE/ace/SSL/SSL_Context.inl | 7 | ||||
-rw-r--r-- | ACE/ace/SSL/SSL_SOCK_Connector.cpp | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/ACE/ace/SSL/SSL_Context.inl b/ACE/ace/SSL/SSL_Context.inl index d7ccb88d7ee..f95beb88e0f 100644 --- a/ACE/ace/SSL/SSL_Context.inl +++ b/ACE/ace/SSL/SSL_Context.inl @@ -37,8 +37,11 @@ ACE_SSL_Context::check_context (void) this->set_mode (); } - ::SSL_CTX_set_verify (this->context_, this->default_verify_mode (), - this->default_verify_callback ()); + if (this->context_ != 0) + { + ::SSL_CTX_set_verify (this->context_, this->default_verify_mode (), + this->default_verify_callback ()); + } } ACE_INLINE SSL_CTX * diff --git a/ACE/ace/SSL/SSL_SOCK_Connector.cpp b/ACE/ace/SSL/SSL_SOCK_Connector.cpp index 45df4ef0404..25a32629b21 100644 --- a/ACE/ace/SSL/SSL_SOCK_Connector.cpp +++ b/ACE/ace/SSL/SSL_SOCK_Connector.cpp @@ -28,6 +28,8 @@ ACE_SSL_SOCK_Connector::ssl_connect (ACE_SSL_SOCK_Stream &new_stream, const ACE_Time_Value *timeout) { SSL *ssl = new_stream.ssl (); + if (ssl == 0) + return -1; if (SSL_is_init_finished (ssl)) return 0; |