我想爲我多年前寫的舊聊天應用程序添加一個ssl支持。我在OpenSSL和LibreSSL上做了大量的閱讀,並決定嘗試一個新的libtls API。我認爲開發人員在這個方面做得非常出色。 我發現它非常易於使用 - 幾乎不需要對現有代碼進行更改。但現在我需要弄清楚一件事:libtls:select()和tls_read()一起工作
早在一天中,我就使用select()來監視套接字並使用recv()來讀取數據。這很容易,因爲這兩個函數都在處理文件描述符。
現在,在libtls中,函數tls_read()需要tls上下文作爲第一個參數。這意味着我需要在每次準備好讀取描述符時搜索客戶端列表以獲取適當的tls上下文。這並不難,但也許有人知道更好的解決方案?我會欣賞所有評論和代碼示例。
請分享一些代碼和一個明確的問題。 http://stackoverflow.com/help/how-to-ask – bibi