WolfSSL: сбой возобновления сеанса из-за проблемы с конфигурацией сборки (cmake)

Я использую компьютер Ubuntu 20.04 вместе с CLion IDE 2020.3.2 и хочу создать приложение, используя WolfSSL, для которого потребуется реализация TLS1.3.

Используя CLion, я клонировал официальный репозиторий https://github.com/wolfSSL/wolfssl.git. CLion автоматически построил проект, и я смог отлично запустить все \wolfssl\examples. Таким образом, сеанс возобновления не работает. Я запускаю сервер/клиент со следующими аргументами: client/server -v 4 -r И я получаю этот вывод со стороны клиента: didn't reuse session id!!! который я могу проверить с помощью Wireshark, что возобновления не было, а было просто еще одно рукопожатие.

В другой сборке я сделал, где вместо cmake (который по умолчанию CLion) я использовал make Мне удалось правильно запустить возобновление, но для этого мне пришлось добавить в конфигурацию перед сборкой эту команду : ./configure --enable-all который включает все функции wolfSSL, кроме SSL v3.

Какую эквивалентную команду --enable-all я должен использовать в своей конфигурации Cmake? Или что я должен сделать, чтобы я мог правильно добиться возобновления?

Пробовал -DWOLFSSL_ALL -DENABLE_ALL и другие, но не получилось. Я попытался включить многие из них по отдельности, чтобы найти тот, который позволяет возобновить работу, но пока ничего.


person Xristos Arthur Xenophontos    schedule 09.03.2021    source источник
comment
Судя по комментариям в их CMakeLists.txt, похоже, что поддержка Включить все функции в проекте CMake находится в списке TODO.   -  person Tsyvarev    schedule 09.03.2021


Ответы (1)


Конкретный параметр wolfSSL для включения сеансов TLS — HAVE_SESSION_TICKET.

В настоящее время нет эквивалентного макроса для параметра ./configure --enable-all, но вы можете использовать метод user_settings, чтобы приблизиться: https://github.com/wolfSSL/wolfssl/tree/master/examples/configs

Вот пример настройки большинства параметров библиотеки: https://github.com/wolfSSL/wolfssl/blob/master/examples/configs/user_settings_all.h

person Eric Blankenhorn    schedule 10.03.2021