Исключение SSL: невозможно создать объект SSL_CTX в клиенте POCO HTTPS - PullRequest
1 голос
/ 25 января 2020

Я использую библиотеки POCO C ++ для создания HTTPS-клиента для подключения к службе SOAP. Ниже приведен код

std::unique_ptr<Poco::Net::HTTPClientSession> session;
Poco::Net::Context::Ptr context;
                    context = new Poco::Net::Context(
                                    Poco::Net::Context::CLIENT_USE, key, cert, "",
                                    Poco::Net::Context::VERIFY_RELAXED, 9, true,
                                    "ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH");
session = std::make_unique<Poco::Net::HTTPSClientSession>(uri.getHost(), uri.getPort(), context);

Теперь код работает нормально в производстве. Однако иногда я получаю следующее сообщение об ошибке

SSL Exception: Cannot create SSL_CTX object: error:140A90A1:SSL routines:SSL_CTX_new:library has no ciphers"

Когда я говорю случайное, я имею в виду, что ошибка появляется через 15-20 дней, и единственный способ исправить ее - перезапустить службу. Теперь сервис многопоточный, и я использую два рабочих потока. Кто-нибудь может порекомендовать решение или причину этой ошибки?

...