Мое намерение - проверить OU («Организационная единица») в одноранговом сертификате. Использование клиента libCurl для HTTP.Как получить сертификат Peer с использованием объекта SSL_CTX
У меня есть объект SSL_CTX со мной во время HTTPs сеанса клиента, который получил от функции обратного вызова, зарегистрированной в «CURLOPT_SSL_CTX_FUNCTION» Как получить сертификат Peer (ceritificate сервера) от SSL_CTX?
Здесь C# код, который я пытаюсь реализовать в C:
Easy.SSLContextFunction sf = new Easy.SSLContextFunction(SSLContextFunctionCallback);
curlCode = easy.SetOpt(CURLoption.CURLOPT_SSL_CTX_FUNCTION, sf);
...
CURLcode SSLContextFunctionCallback(SSLContext ctx, object extraData)
{
CURLcode retCode = CURLcode.CURLE_OK;
IntPtr context = ctx.Context;
retCode = ApsVerifyPeer(context); return retCode;
}
Мне нужно реализовать функцию ApsVerifyPeer в C/C++ для чтения сертификата партнера и проверить поле OU в сертификате, где у меня есть контекст SSL (SSL_CTX). Не могли бы вы поделиться своими мыслями.
Можете ли вы добавить код, который у вас есть до сих пор, и любую конкретную ошибку или проблему, с которой вы сталкиваетесь. – BMac
вы можете отредактировать исходный вопрос и включить код между тегами сценария (вы найдете кнопку, чтобы сделать это для вас) - это упрощает чтение кода для всех нас. – BMac