ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] Nettle 4
@ 2026-08-20 10:16 Mikhail Efremov
  2026-08-20 11:00 ` Anton Farygin
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Mikhail Efremov @ 2026-08-20 10:16 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2026-08-20 13:24 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-20 10:16 [devel] Nettle 4 Mikhail Efremov
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

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