Boost :: Asio :: SSL :: Контекст, не отправляя сертификаты клиентаC++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Boost :: Asio :: SSL :: Контекст, не отправляя сертификаты клиента

Сообщение Anonymous »

Я переношу клиентскую библиотеку Java в статическую библиотеку C ++. Эти библиотеки предоставляют SDK для связи с сервером, который написан на Java с использованием Netty .
Я использую Boost 1.87 с C ++ 23.

Код: Выделить всё

#pragma once

#include "Config.hpp"
#include "util/concurrent/ThreadPool.hpp"
#include 
#include 
#include 
#include 
#include 

using namespace boost::asio;
namespace fs = std::filesystem;

namespace sdk {

class HttpClient {
public:
explicit HttpClient(std::shared_ptr threadPool)
: m_threadPool(std::move(threadPool)),
m_ioContext(m_threadPool->getIoContext()),
m_sslContext(ssl::context::tlsv12_client),
m_sslSocket(m_ioContext, m_sslContext),
m_host(Config::getData()->host),
m_port(Config::getData()->port)
{
auto configData = Config::getData();

// so dumb. why can't I just use the context directly?
// i have to use the native handle to load the certificate and key
// because boost::asio is not sending the client certificate
SSL *sslHandle = m_sslSocket.native_handle();
if (!sslHandle) {
throw std::runtime_error("Failed to retrieve SSL handle!");
}

if (SSL_use_certificate_file(sslHandle, configData->keystore.path.c_str(), SSL_FILETYPE_PEM) keystore.path); // keystore.path);
}
else if (SSL_use_PrivateKey_file(sslHandle, configData->key.path.c_str(), SSL_FILETYPE_PEM) key.path, ssl::context::pem); // key.path);
}
}

void connect()
{
ip::tcp::resolver resolver(m_ioContext);
auto              endpoints = resolver.resolve(m_host, std::to_string(m_port));

LOG(info) 

Подробнее здесь: [url]https://stackoverflow.com/questions/79401513/boostasiosslcontext-not-sending-client-certificates[/url]
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Boost :: Asio :: SSL :: Контекст, не отправляя сертификаты клиента
    Anonymous » » в форуме C++
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Как добавить самоопределенные сертификаты в сертификаты по умолчанию в httpsurlconnection
    Anonymous » » в форуме Android
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Легко ли экспортировать ключи boost::asio::ssl в кейлоггер?
    Anonymous » » в форуме C++
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • Исключение при использовании boost::asio::ssl для выполнения HTTPS-запроса?
    Anonymous » » в форуме Linux
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Легко ли сделать Boost :: Asio :: SSL Экспорт Ключи в KeyLogger
    Anonymous » » в форуме C++
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C++»