Миграция на OpenSSL 1.1.1
От: qaz77  
Дата: 15.07.20 08:56
Оценка:
Здравствуйте.

В одном проекте, использующем OpenSSL, решили обновить версию.
Раньше была версия 1.0.2d.
Взял последнюю стабильную 1.1.1g от Апр 2020.

Собрал, установил. Стал компилировать свои исходники...
У меня челюсть отвисла. Они поменяли все!

Ну ладно выкинули старые ненадежные алгоритмы, это правильно.
Но они все структуры, которые раньше были в публичных заголовках, сделали непрозрачными!
Никакими дефайнами совместимость тут не настроить!

Было:
EVP_MD_CTX mdctx;
EVP_MD_CTX_init(&mdctx);
// работаем с mdctx...
EVP_MD_CTX_cleanup(&mdctx);


Теперь надо так:
EVP_MD_CTX *mdctx;
mdctx = EVP_MD_CTX_new();
// работаем с mdctx...
EVP_MD_CTX_free(mdctx);


Просто крик души.
Ну как так можно?
Вроде серьезная библиотека...
Или в опенсорсе это норм?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.