From: Mikhail Efremov <sem@altlinux.org>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: [devel] Nettle 4
Date: Thu, 20 Aug 2026 13:16:16 +0300
Message-ID: <20260820131616.0011f621@sem.office.basealt.ru> (raw)
Hello!
Nettle 4.0 вышла еще в феврале, в ней изменился ABI (soname bump), и,
что самое главное, API.
Summary по изменению API от ИИ:
1. Функции хэширования:
Функции *_digest больше не принимают желаемый
размер дайджеста (digest size) в качестве аргумента.
2. Удаление старых интерфейсов AES:
Окончательно удален старый struct aes_ctx и все функции для работы с
ним (вместо него следует использовать фиксированные размеры ключей
вроде struct aes256_ctx, появившиеся еще в ветке v3).
3. Изменения в SHA-3:
Все варианты SHA-3 теперь используют единый struct sha3_ctx и функцию
sha3_init (старые специфичные имена оставлены как макросы препроцессора
для совместимости).
4. Очистка заголовков: Удален старый заголовочный файл
sha.h (нужно использовать sha1.h или sha2.h), а также целиком удален
устаревший и неполный модуль pgp.h.
5. Прочие удаления: Убран недокументированный struct nettle_armor,
функция base64_encode_group и устаревшие функции
_rsa_blind/_rsa_unblind.
Чаще всего проблемы вызывает первый пункт, но патч обычно тривиальный.
Я решил, что полгода достаточное время, чтобы апстримы
добавили поддержку и можно попробовать собрать nettle-4 в Сизиф.
С клиентами, которые к этому не готовы, ситуация следующая:
chrony rider
Фикс в апстримном git, поддержка должна быть в следующей версии.
curl rider ldv glebfm
Поддержка есть, но curl сейчас не пересобирается в Сизифе.
libdatachannel antohami @everybody
Поддержка в версии 0.24.5, нужно обновить.
mailfromd asy
Поддержки нет.
neatvnc aris
Фикс в апстримном git, поддержка должна быть в следующей версии.
ocaml-ocamlnet rider @everybody
Поддержки нет.
ocserv shaba @everybody
Поддержка в версии 1.5.0, нужно обновить.
octave-general manowar viy cas @everybody
Поддержка в версии 2.1.4, нужно обновить.
opendht lakostis nenderus oddity @everybody
Поддержка в версии 4.0.2, нужно обновить.
radcli shaba @everybody
Фикс в апстримном git, поддержка должна быть в следующей версии.
rdesktop shad @everybody
Поддержки нет.
rdfind @nobody
Поддержка в версии 1.8.0, нужно обновить.
sequoia-sqv tyaplyapych @everybody
Напрямую nettle не использует, скорее всего нужно обновить
vendored crates, возможно вместе с обновлением версии.
srt rider @everybody
Поддержки нет.
stoken cow @everybody
Поддержки нет.
tigervnc protvin rider @everybody
Фикс в апстримном git, поддержка должна быть в следующей версии.
unvanquished shad @everybody
Фикс в апстримном git, поддержка должна быть в следующей версии.
viking snk rider @everybody
Фикс в апстримном git, поддержка должна быть в следующей версии.
Вывод: собирать nettle-4 в Сизиф пока рано, ждем еще некоторое время.
Но перейти на nettle-4 на все равно будет нужно, как максимум до конца
года стоит это сделать.
Так что предлагаю готовиться уже сейчас, т.е. мантейнеров
пакетов, для которых есть фикс в новой версии, прошу эти пакеты
обновить. Мантейнерам же тех пакетов, для которых фикса нет, предлагаю
поискать патчи у коллег в других дистрибутивах.
P.S. Делать compat-библиотеку в данном случае плохая идея, т.к.
очень высока вероятность попадания двух версий библиотек в одно
адресное пространство, помню это по предыдущему смену soname у nettle.
В основном потому, что обычно клиенты libnettle слинкованы и с gnutls,
которая сама клиент nettle.
--
WBR, Mikhail Efremov
next reply other threads:[~2026-08-20 10:16 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-20 10:16 Mikhail Efremov [this message]
2026-08-20 11:00 ` Anton Farygin
2026-08-20 11:39 ` Mikhail Efremov
2026-08-20 11:57 ` Mikhail Efremov
2026-08-20 12:16 ` Anton Farygin
2026-08-20 13:20 ` Mikhail Efremov
2026-08-20 13:24 ` Anton Midyukov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260820131616.0011f621@sem.office.basealt.ru \
--to=sem@altlinux.org \
--cc=devel@lists.altlinux.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git