Q1:是什麼狀態NOT_HANDSHAKING和枚舉的SSLEngine上的SSLEngineResult.HandshakeStatus FINISHED之間的區別?差異和成品
的Javadoc只是說
FINISHED:SSLEngine只是剛剛結束握手。
NOT_HANDSHAKING:SSLEngine當前沒有握手。
我特別想知道:
Q2:如果初始握手已經成功地進行,如果發動機處於狀態成品或狀態NOT_HANDSHAKING?
是什麼讓我懷疑的是:示例代碼SSLChannel.java到this article,告訴
case NOT_HANDSHAKING:
assert false : "doHandshake() should never reach the NOT_HANDSHAKING state";
,而在我的示例程序的初始握手似乎與國家NOT_HANDSHAKING完成。所以我不知道這是好還是錯誤的狀態。另外,官方JSSE Refernce Guide是沒有幫助的,因爲它只是說
// Handle other status: // FINISHED or NOT_HANDSHAKING
...
任何信息表示讚賞。
每個換行/解包可能會改變握手狀態。你應該先看到一個完成;之後,你應該看到NOT_HANDSHAKING - 直到同伴試圖重新談判。 – ZhongYu
我已經做了一些ssl [編碼](https://github.com/zhong-j-yu/bayou/blob/0.9/src/bayou/ssl/SslHandshaker.java#L200)以防萬一您可以參考。 – ZhongYu
太好了。謝謝。我很好奇看到握手狀態將如何與我的程序進行比較。 – user120513