2011-04-10 191 views
3

在正常連接,asuming插座:如何知道一個SSL套接字的加速ASIO狀態

boost::asio::ip::tcp::socket socket_; 

它可能要求與端口狀態:

if (socket_.is_open()) { ... } 

而是在安全連接,asuming插座:

boost::asio::ssl::stream<boost::asio::ip::tcp::socket> socket_; 

沒有爲的is_open()方法對象,所以問題:

是否有類似的方式來知道套接字狀態?

+0

你應該接受你以前的問題的一些答案,這樣做可能會爲未來的問題產生更多更好的答案。 – 2011-04-11 14:46:45

回答

4
boost::asio::ssl::stream<boost::asio::ip::tcp::socket> socket_; 
if (socket_.lowest_layer().is_open()) { 
    // do something great 
} 

有關更多信息,請參閱documentation

+0

感謝您的意見。雖然通常我會在發佈一些問題之前嘗試使用Doc的工作,但這次我無法找到。 – 2011-04-11 16:52:47

+0

@Old沒有問題,Asio封裝SSL支持的方式有時會讓人困惑。 – 2011-04-11 17:54:53