Приветствую,
Ну, т.е. SMTP клиент по TCP коннектится к серверу используя SSL,
а там его всречают невалидным сертификатом (то же с pop3,imap, https).
По умолчанию клиента разворачивают и он возвращает ошибку.
Но можно задать Callback (как вариант на все приложение), и если Callback возвращает true то клиент продолжает работать с сервером.
Как это делать в .Net я нарыл:
SSL:Удаленный сертификат недействителен согласно результатам проверки подлинности.
ServicePointManager.ServerCertificateValidationCallback = _
New RemoteCertificateValidationCallback(AddressOf ValidateServerCertificate)
Private Function ValidateServerCertificate(ByVal sender As Object, ByVal certificate As X509Certificate, _
ByVal chain As X509Chain, ByVal sslPolicyErrors As SslPolicyErrors) As Boolean
' Accept all certificates
Return True
End Function
(P.S. Извините за код не на C++, это для иллюстрации того, о чем спрашиваю, а спрашиваю как раз о том как в классике, читай на C++ это делается)
Но я иногда использую COM-объект CDO.Message, и на него этот трюк не проходит, потому что COM это другой процесс.
А вопрос такой:
какие WIN API вызывают этот CallBack в приложении?как мне эту ловушку выставить?
Я по API конечно любитель большой, но с "проверкой сертификата" только второй день воюю, поэтому как это делается на классике не знаком.
Нет ли каких примеров на C++?