[問題] SSL 連接怎樣判斷對方已經斷線了?

作者: wowhorng (築夢踏實)   2015-12-08 21:26:39
請問各位高手們,
我是通過 SSL_read 來讀取對方傳進來的數值在做相對應的動作,
但是現在遇到三個問題
1. 使用 SSL_read時,程式會一直停在 SSL_read 函式這裡,如何跳過呢?
2. 如何判斷對方已經斷線了? 假如得知對方斷線,如何自動重新連線呢?
3. 如何檢查判斷網路連線中斷? 想要自動連線應該如何做比較好 ??
作者: Qbsuran (Qbsuran)   2015-12-09 21:13:00
1.SSL_read我記得不會block 傳回0表示沒資料 會block的話就用select2. SSL_read傳回-1去檢查error code, ssl_do_handshake()
作者: wowhorng (築夢踏實)   2015-12-09 21:27:00
停在 SSL_read 這裡, 就像是阻塞在這邊一樣 ~~,有什麼方式可以讓 SSL_read 往下跑, 非停留等待 read ?
作者: Qbsuran (Qbsuran)   2015-12-09 21:39:00
在一開始會開socket 用select看他有沒有資料進來你是不是要做HTTPS Server啊
作者: wowhorng (築夢踏實)   2015-12-09 22:40:00
要做 cloud client, 程式會停在 SSL_read 等待 server等待 server 傳送指令過來
作者: askacis (ASKA)   2015-12-10 08:40:00
socket 要設 timeout就算 block 如果對方 socket close,會 read到 0

Links booklink

Contact Us: admin [ a t ] ucptt.com