Я пытаюсь создать программу клиент / сервер, но у меня возникают трудности с продолжением работы с к сожалению редким количеством документации OpenSSL.
Моя проблема: SSL_accept
выдает «Неверный аргумент»после выполнения следующего кода (упрощенно):
SSL* ssl = SSL_new(ctx); // ctx is created earlier
SSL_set_fd(ssl, socket); // socket is created earlier as well
BIO * bio = BIO_new(BIO_s_accept());
BIO_set_fd(bio, socket, BIO_NOCLOSE);
SSL_set_bio(ssl, bio, bio);
SSL_accept(ssl);
Я проверяю ошибки после каждого вызова метода, и ни сокет, ни биография не выходят из строя.Нет никаких признаков того, что происходит что-то странное, пока я не попытаюсь вызвать SSL_accept.Я предполагаю, что объект ssl был поврежден где-то по пути, но я понятия не имею, как ~
Edit Объект SSL и объект BIO не являются ноль в точке вызова SSL_accept ().
Будем весьма благодарны за любые указатели в правильном направлении: D