Как программно настроить TLS с помощью librelp для реп-сервераC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Как программно настроить TLS с помощью librelp для реп-сервера

Сообщение Anonymous »

Я создаю relp-сервер, используя заголовки librelp для получения сообщений от клиента, который я также создаю. Документация по этой библиотеке крайне скудна, и поэтому я не могу настроить TLS для своего сервера. У меня есть два подхода, которые я опробовал ниже, но я даже не уверен, что они являются отдельными или дополняющими друг друга. Я определил приведенные ниже функции как необходимые, однако метод 1, похоже, предоставляет всю информацию, передаваемую функциями метода 2.
Метод 1: использование TlsConfigCmd
Несвязанный код опущен.
main.cpp

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

relpSrv_t* pRelpSrv;
relpSrvSetEnableTLS2(pRelpSrv);
relpSrvSetTlsConfigCmd(pRelpSrv, GetFileChars("tls-cmd")); // GetFileChars reads file to char*
relpSrvSetAuthMode(pRelpSrv, (char*)"certvalid");

relpEngineRun(pRelpSrv);
tls-cmd

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

type="omrelp"
target="localhost" port="10000"
tls="on"
tls.caCert="ca-cert.pem"
tls.myCert="server-cert.pem"
tls.myPrivKey="server-key.pem"
tls.authMode="name"
tls.tlslib="openssl"
tks.tlscfgcmd="MinProtocol=TLSv1.2"
Метод 2: SetCert/Setkey
Несвязанный код опущен.

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

relpSrv_t* pRelpSrv;
relpSrvSetOwnCert(pRelpSrv, GetFileChars("server-cert.pem");
relpSrvSetCACert(pRelpSrv, GetFileChars("ca-cert.pem");
relpSrvSetPrivKey(pRelpSrv, GetFileChars("server-key.pem");
relpSrvSetAuthMode(pRelpSrv, (char*)"certvalid");

relpEngineRun(pRelpSrv);
Однако с помощью любого из этих методов мой клиент по-прежнему может отправлять сообщения, а обратный вызов получения системного журнала (установленный с помощью relpEngineSetSyslogRcv(pRelpEngine, &MyCallback);) по-прежнему вызывается .
Как настроить мой реп-сервер так, чтобы он требовал TLS для сообщений?

Подробнее здесь: https://stackoverflow.com/questions/785 ... elp-server
Ответить

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

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

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

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

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