m_CV.notify_all();
}
- break;
- case TlsActionClose:
- (void) SSL_shutdown(m_SSL.get());
- rc = 1;
-
- m_CloseOK = true;
- m_CV.notify_all();
-
break;
default:
VERIFY(!"Invalid TlsAction");
void TlsStream::Close(void)
{
boost::mutex::scoped_lock lock(m_Mutex);
- m_CurrentAction = TlsActionClose;
- ChangeEvents(POLLOUT);
-
- while (!m_CloseOK && !m_ErrorOccurred)
- m_CV.wait(lock);
+ (void) SSL_shutdown(m_SSL.get());
+ m_Socket->Close();
- HandleError();
+ m_CloseOK = true;
+ m_CV.notify_all();
}
bool TlsStream::IsEof(void) const