При использовании OpenSSL с неблокирующими сокетами удобно использовать режим прозрачного согласования, при котором согласование инициируется путем вызова SSL_write в еще не защищенном подключенном контексте SSL, а затем обработки полученной ошибки (обычно SSL_WANT_READ) для чтенияпакет рукопожатия от выходного BIO и отправить его по транспорту.
Однако, без явного (блокирующего) вызова SSL_do_handshake мне не ясно, когда пытаться проверить сертификат.
Должен ли я просто выполнить проверку сертификата, как только SSL_write вернет успех в первый раз?Или есть лучший сигнал?