Thư viện OpenSSL mang lại cho bạn sự linh hoạt tối đa về xử lý các sự cố liên quan đến ổ cắm. Các khối SSL_connect
trong trường hợp của bạn bởi vì bạn phải sử dụng nó với một ổ cắm chặn. Vui lòng sử dụng nó với một ổ cắm không chặn, trong trường hợp này nó sẽ trở lại với -1. Nếu bạn gọi hàm SSL_get_error
sẽ cho bạn lỗi SSL_ERROR_WANT_READ
hoặc SSL_ERROR_WANT_WRITE
tùy thuộc vào thời điểm tcp recv hoặc send không thể hoàn thành thao tác tương ứng.
Khi thu được SSL_ERROR_WANT_WRITE
/SSL_ERROR_WANT_READ
, bạn phải gọi hàm chọn bằng cách chuyển socket đến fd_set
và thời gian chờ phù hợp. Nếu chọn thời gian, bạn có thể xem xét SSL_connect
của mình để hết thời gian chờ.
Lưu ý:SSL_SESSION_set_timeout
được sử dụng để đặt giá trị thời gian chờ của phiên được liên kết với tiếp tục SSL. Họ không có gì để làm với thời gian ra một kết nối.
Các liên kết dưới đây sẽ giúp bạn (đặc biệt là liên kết thứ hai, Phần 6 mà nói về ghép I/O):
:(tài nguyên liên kết chuyển –
đây là một số liên kết khác tới các tệp PDF đó: [part1] (http://vanets.vuse.vanderbilt.edu/dokuwiki/lib/exe/fetch.php?media=resource:part1.pdf) và [part2] (http: //vanets.vuse.vanderbilt.edu/dokuwiki/lib/exe/fetch.php?media=resource:part2.pdf). pe này giúp! – Castaglia