]> git.ipfire.org Git - thirdparty/gnutls.git/log
thirdparty/gnutls.git
3 months agoMerge branch 'wip/dueno/mldsa-pk-from-sk' into 'master'
Daiki Ueno [Mon, 13 Apr 2026 01:56:54 +0000 (10:56 +0900)] 
Merge branch 'wip/dueno/mldsa-pk-from-sk' into 'master'

nettle: support deriving ML-DSA public key from expanded secret key

Closes #1723

See merge request gnutls/gnutls!2088

3 months agoMerge branch 'master' into 'master'
Daiki Ueno [Sun, 12 Apr 2026 23:36:20 +0000 (08:36 +0900)] 
Merge branch 'master' into 'master'

aarch64: Enable GCS

Closes #1764

See merge request gnutls/gnutls!2038

3 months agonettle: support deriving ML-DSA public key from expanded secret key 2088/head
Daiki Ueno [Thu, 9 Apr 2026 04:47:26 +0000 (13:47 +0900)] 
nettle: support deriving ML-DSA public key from expanded secret key

RFC 9881 defines 3 private key formats for ML-DSA: "seed",
"expandedKey" and both. When it is "expandedKey", a non-trivial
conversion is required to derive a public key, which is now
implemented in leancrypto through lc_dilithium_pk_from_sk. This patch
modifies the pk_fixup backend function to use it to derive a public
key when importing a private key.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 months agoaarch64: Enable GCS 2038/head
Guillaume Gardet [Thu, 23 Oct 2025 13:19:08 +0000 (15:19 +0200)] 
aarch64: Enable GCS

Signed-off-by: Guillaume Gardet <guillaume.gardet@arm.com>
3 months agonettle: use "switch" instead of "if" in wrap_nettle_pk_fixup
Daiki Ueno [Fri, 10 Apr 2026 00:54:48 +0000 (09:54 +0900)] 
nettle: use "switch" instead of "if" in wrap_nettle_pk_fixup

This makes it easier to conditionalize code with #ifdef.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 months agoprivkey_to_pubkey: use constants to access public key parameters
Daiki Ueno [Thu, 9 Apr 2026 03:58:16 +0000 (12:58 +0900)] 
privkey_to_pubkey: use constants to access public key parameters

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 months agoMerge branch 'master' into 'master'
Daiki Ueno [Mon, 30 Mar 2026 00:29:10 +0000 (09:29 +0900)] 
Merge branch 'master' into 'master'

Check client certificate usage in serv

See merge request gnutls/gnutls!2087

4 months agoMerge branch 'wip/dueno/nc-tree' into 'master'
Daiki Ueno [Mon, 30 Mar 2026 00:24:06 +0000 (09:24 +0900)] 
Merge branch 'wip/dueno/nc-tree' into 'master'

x509/name_constraints: rework with rbtree-list

See merge request gnutls/gnutls!2083

4 months agoUse client certificate in gnutls-cli test 2087/head
Joachim Vandersmissen [Sun, 29 Mar 2026 15:55:08 +0000 (10:55 -0500)] 
Use client certificate in gnutls-cli test

Signed-off-by: Joachim Vandersmissen <git@jvdsn.com>
4 months agoMerge branch 'wip/dueno/doc-update' into 'master'
Daiki Ueno [Sun, 29 Mar 2026 00:20:08 +0000 (09:20 +0900)] 
Merge branch 'wip/dueno/doc-update' into 'master'

cli,serv: make it explicit that they are a testing program

See merge request gnutls/gnutls!2086

4 months agoSECURITY.md: suggest CVSS v3.1 [ci skip] 2086/head
Daiki Ueno [Fri, 27 Mar 2026 01:26:03 +0000 (10:26 +0900)] 
SECURITY.md: suggest CVSS v3.1 [ci skip]

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 months agoSECURITY.md: don't impose normal process for low severity issues
Daiki Ueno [Sat, 28 Mar 2026 08:00:09 +0000 (17:00 +0900)] 
SECURITY.md: don't impose normal process for low severity issues

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 months agoSECURITY.md: make it explicit that testing programs are out of scope
Daiki Ueno [Fri, 27 Mar 2026 01:24:13 +0000 (10:24 +0900)] 
SECURITY.md: make it explicit that testing programs are out of scope

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 months agocli,serv: make it explicit that they are a testing program
Daiki Ueno [Fri, 27 Mar 2026 01:18:52 +0000 (10:18 +0900)] 
cli,serv: make it explicit that they are a testing program

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 months agox509/name_constraints: refactor intersection/union with iterators 2083/head
Daiki Ueno [Tue, 24 Mar 2026 11:27:37 +0000 (20:27 +0900)] 
x509/name_constraints: refactor intersection/union with iterators

This refactors the loops in name_constraints_node_list_intersect and
name_constraints_node_list_union with gl_list_iterator_t, as well as
factor out the partitioning logic in _intersect to _partition.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 months agoCheck client certificate usage in serv
Joachim Vandersmissen [Fri, 27 Mar 2026 03:09:55 +0000 (22:09 -0500)] 
Check client certificate usage in serv

Signed-off-by: Joachim Vandersmissen <git@jvdsn.com>
4 months agox509/name_constraints: redefine type_bitmask_t as unsigned long
Daiki Ueno [Wed, 25 Mar 2026 02:21:40 +0000 (11:21 +0900)] 
x509/name_constraints: redefine type_bitmask_t as unsigned long

Previously type_bitmask_t was defined as uint8_t, which were
zero-extended to a machine word when doing bit-wise operations.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 months agohello_ext: move static assertions from gnutls_int.h to hello_ext.c
Daiki Ueno [Wed, 25 Mar 2026 07:32:08 +0000 (16:32 +0900)] 
hello_ext: move static assertions from gnutls_int.h to hello_ext.c

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 months agox509/name_constraints: extensively use bool instead of unsigned
Daiki Ueno [Mon, 23 Mar 2026 08:51:10 +0000 (17:51 +0900)] 
x509/name_constraints: extensively use bool instead of unsigned

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 months ago_gnutls_x509_name_constraints_is_empty: remove type argument
Daiki Ueno [Mon, 23 Mar 2026 08:20:45 +0000 (17:20 +0900)] 
_gnutls_x509_name_constraints_is_empty: remove type argument

The type argument is only used in
gnutls_x509_name_constraints_check_crt defined in the same
file. Create a helper function name_constraints_contains_type split
from _gnutls_x509_name_constraints_is_empty to cater for that.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 months agox509/name_constraints: extensively use gnutls_x509_subject_alt_name_t
Daiki Ueno [Fri, 20 Mar 2026 01:50:56 +0000 (10:50 +0900)] 
x509/name_constraints: extensively use gnutls_x509_subject_alt_name_t

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 months agox509/name_constraints: rework with rbtree-list
Daiki Ueno [Tue, 17 Mar 2026 04:13:58 +0000 (13:13 +0900)] 
x509/name_constraints: rework with rbtree-list

Instead of sorting permitted sets on demand, use a sorted list backed
by a binary tree to represent the sorted view of the sets. The
amortized complexity should be O(log n) as before.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 months agoMerge branch 'wip/dueno/utils' into 'master'
Alexander Sosedkin [Thu, 26 Mar 2026 15:35:50 +0000 (15:35 +0000)] 
Merge branch 'wip/dueno/utils' into 'master'

mem,str,datum: rename `_steal_*` to `_take_*`

See merge request gnutls/gnutls!2085

4 months agomem: make _gnutls_take_pointer type safer 2085/head
Daiki Ueno [Tue, 17 Mar 2026 03:42:23 +0000 (12:42 +0900)] 
mem: make _gnutls_take_pointer type safer

This changes the source parameter of _gnutls_take_pointer from "void **"
to "void *", while adding automatic cast using typeof.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 months agomem,str,datum: rename _steal_* to _take_*
Daiki Ueno [Thu, 26 Mar 2026 03:39:56 +0000 (12:39 +0900)] 
mem,str,datum: rename _steal_* to _take_*

While the name of _gnutls_steal_* functions was inspired by GLib's
g_steal_* family, it doesn't seem to be intuitive at first glance,
possibly because of the negative meaning of the word "steal". Let's
call it _gnutls_take_*, following the example of TAKE_* macros in
systemd and Option::take in Rust.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 months agoMerge branch 'ci-f43' into 'master'
Daiki Ueno [Thu, 12 Mar 2026 22:58:40 +0000 (07:58 +0900)] 
Merge branch 'ci-f43' into 'master'

.gitlab-ci.yml: move fedora jobs to Fedora 43

See merge request gnutls/gnutls!2082

4 months agoMerge branch 'devel-ci-local' into 'master'
Alexander Sosedkin [Thu, 12 Mar 2026 13:03:31 +0000 (13:03 +0000)] 
Merge branch 'devel-ci-local' into 'master'

devel/ci-local.sh: add a gitlab-ci-local wrapper

See merge request gnutls/gnutls!2077

4 months ago.gitlab-ci.yml: move fedora jobs to Fedora 43
Alexander Sosedkin [Mon, 23 Feb 2026 16:10:51 +0000 (17:10 +0100)] 
.gitlab-ci.yml: move fedora jobs to Fedora 43

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
4 months agodevel/ci-local.sh: add a gitlab-ci-local wrapper
Alexander Sosedkin [Mon, 2 Mar 2026 12:51:48 +0000 (13:51 +0100)] 
devel/ci-local.sh: add a gitlab-ci-local wrapper

gitlab-ci-local doesn't play nicely with gnutls out of the box.
This adds a wrapper that smoothes several wrinkles out:
1. if you're using worktrees, bootstrapping submodules fails
2. there's no way to pass arbitrary arguments like `--remote` to podman
3. `artifacts: untracked: true` doesn't work without `paths` specified
4. commit-check job is skipped by default

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
4 months agoMerge branch 'c99' into 'master'
Daiki Ueno [Fri, 6 Mar 2026 00:51:58 +0000 (09:51 +0900)] 
Merge branch 'c99' into 'master'

configure: make the C99 detection more resiliant

Closes #1806

See merge request gnutls/gnutls!2081

5 months agoconfigure: make the C99 detection more resiliant
Ross Burton [Thu, 5 Mar 2026 11:33:57 +0000 (11:33 +0000)] 
configure: make the C99 detection more resiliant

autoconf 2.73 will default to C23 by default, which means that the >C99
detection logic in configure.ac will fail because it only handles c11
and c99.

Instead of adding c23 to the list and then breaking again in the future,
flip the logic around (as suggested by Zack Weinberg) and check
explicitly for just c89.

Closes #1806.

Signed-off-by: Ross Burton <ross.burton@arm.com>
5 months agoMerge branch 'ktls-chacha-iv-fix' into 'master'
Alexander Sosedkin [Wed, 4 Mar 2026 16:31:52 +0000 (16:31 +0000)] 
Merge branch 'ktls-chacha-iv-fix' into 'master'

ktls: fix ChaCha20-Poly1305 IV passing for TLS 1.2

See merge request gnutls/gnutls!2079

5 months agoktls: simplify ChaCha20‑Poly1305 IV passing
Alexander Sosedkin [Tue, 3 Mar 2026 18:52:18 +0000 (19:52 +0100)] 
ktls: simplify ChaCha20‑Poly1305 IV passing

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agoktls: fix ChaCha20-Poly1305 IV passing for TLS 1.2
Alexander Sosedkin [Tue, 3 Mar 2026 18:47:25 +0000 (19:47 +0100)] 
ktls: fix ChaCha20-Poly1305 IV passing for TLS 1.2

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agoMerge branch 'wip/dueno/remove-nettle-bundle' into 'master'
Alexander Sosedkin [Wed, 4 Mar 2026 13:03:50 +0000 (13:03 +0000)] 
Merge branch 'wip/dueno/remove-nettle-bundle' into 'master'

Remove no longer used files copied from Nettle

See merge request gnutls/gnutls!2078

5 months agonettle: remove unused block8.h, block-internal.h, and nettle-internal.h
Daiki Ueno [Tue, 3 Mar 2026 09:13:27 +0000 (18:13 +0900)] 
nettle: remove unused block8.h, block-internal.h, and nettle-internal.h

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agonettle: remove bundled code for upstreamed GOST Streebog
Daiki Ueno [Tue, 3 Mar 2026 06:48:25 +0000 (15:48 +0900)] 
nettle: remove bundled code for upstreamed GOST Streebog

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agonettle: remove check for nettle_rsa_sec_decrypt
Daiki Ueno [Tue, 3 Mar 2026 01:28:03 +0000 (10:28 +0900)] 
nettle: remove check for nettle_rsa_sec_decrypt

Now that Nettle 3.10 is required to build the library, the check for
the function is redundant.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agonettle: remove check for nettle_cbc_aes128_encrypt
Daiki Ueno [Tue, 3 Mar 2026 01:25:57 +0000 (10:25 +0900)] 
nettle: remove check for nettle_cbc_aes128_encrypt

nettle_cbc_aes128_encrypt was added in Nettle 3.8, while we require
3.10 or later. We can use the function unconditionally.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agonettle: remove bundled code for *_shake_output
Daiki Ueno [Tue, 3 Mar 2026 01:22:40 +0000 (10:22 +0900)] 
nettle: remove bundled code for *_shake_output

Now that Nettle 3.10 is required to build the library, the bundled
code is no longer used.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agonettle: remove bundled code for RSA-OAEP
Daiki Ueno [Tue, 3 Mar 2026 01:21:07 +0000 (10:21 +0900)] 
nettle: remove bundled code for RSA-OAEP

Now that Nettle 3.10 is required to build the library, the bundled
code is no longer used.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agonettle: remove bundled code for AES-GCM-SIV
Daiki Ueno [Tue, 3 Mar 2026 01:19:10 +0000 (10:19 +0900)] 
nettle: remove bundled code for AES-GCM-SIV

Now that Nettle 3.10 is required to build the library, the bundled
code is no longer used.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agoMerge branch 'wip/dueno/nettle-4-followup' into 'master'
Alexander Sosedkin [Wed, 4 Mar 2026 11:42:35 +0000 (11:42 +0000)] 
Merge branch 'wip/dueno/nettle-4-followup' into 'master'

accelerated: don't register custom HMAC for AArch64 if Nettle 4

Closes #1804

See merge request gnutls/gnutls!2080

5 months agonettle: revert workaround for base64_decode_update return values
Daiki Ueno [Tue, 3 Mar 2026 06:41:44 +0000 (15:41 +0900)] 
nettle: revert workaround for base64_decode_update return values

This reverts commit d6014115969655005968491be1da8892ddedc134, as it
turned out that the change of error return value was only available in
an unreleased version of Nettle.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agoaccelerated: don't register custom HMAC for AArch64 if Nettle 4
Daiki Ueno [Wed, 4 Mar 2026 01:07:22 +0000 (10:07 +0900)] 
accelerated: don't register custom HMAC for AArch64 if Nettle 4

As a follow-up of commit 4e3921c36529110a94c2a63e0d6601c502901589, add
missing #ifdefs for AArch64, as Nettle 4 doesn't provide an easy way
to implement a custom HMAC instance.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agoMerge branch 'update-gnulib' into 'master'
Alexander Sosedkin [Wed, 4 Mar 2026 10:35:25 +0000 (10:35 +0000)] 
Merge branch 'update-gnulib' into 'master'

gnulib: update to 2026-03-01 1cc0125a28

See merge request gnutls/gnutls!2069

5 months agognulib: update to 2026-03-01 1cc0125a28
Alexander Sosedkin [Wed, 18 Feb 2026 15:30:25 +0000 (16:30 +0100)] 
gnulib: update to 2026-03-01 1cc0125a28

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agoMerge branch 'fix-mingw' into 'master'
Alexander Sosedkin [Tue, 3 Mar 2026 18:55:11 +0000 (18:55 +0000)] 
Merge branch 'fix-mingw' into 'master'

fix mingw

See merge request gnutls/gnutls!2076

5 months ago.gitlab-ci.yml: unmark mingw jobs as manual
Alexander Sosedkin [Mon, 2 Mar 2026 12:08:08 +0000 (13:08 +0100)] 
.gitlab-ci.yml: unmark mingw jobs as manual

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months ago.gitlab-ci.yml: explicitly initialize wine prefix...
Alexander Sosedkin [Sun, 1 Mar 2026 01:48:19 +0000 (02:48 +0100)] 
.gitlab-ci.yml: explicitly initialize wine prefix...

... with no concurrency, before running the tests

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months ago.gitlab-ci.yml: use separate 32 and 64 mingw images
Alexander Sosedkin [Wed, 25 Feb 2026 16:06:57 +0000 (17:06 +0100)] 
.gitlab-ci.yml: use separate 32 and 64 mingw images

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agotests/name-constraints-ip: call gnutls_global_init explicitly
Alexander Sosedkin [Sun, 1 Mar 2026 23:51:38 +0000 (00:51 +0100)] 
tests/name-constraints-ip: call gnutls_global_init explicitly

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agotests/name-constraints-ip: turn check_for_error into a macro
Alexander Sosedkin [Sun, 1 Mar 2026 23:51:05 +0000 (00:51 +0100)] 
tests/name-constraints-ip: turn check_for_error into a macro

This way we can get more meaningful diagnostics
with the use of the __LINE__ macro and tell the failures apart.

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agoMerge branch 'wip/dueno/nettle-4' into 'master'
Daiki Ueno [Sat, 28 Feb 2026 00:40:28 +0000 (09:40 +0900)] 
Merge branch 'wip/dueno/nettle-4' into 'master'

Support building with Nettle 4

Closes #1791

See merge request gnutls/gnutls!2075

5 months ago.gitlab-ci.yml: re-enable fedora/nettle jobs with Nettle master
Daiki Ueno [Thu, 26 Feb 2026 22:00:21 +0000 (07:00 +0900)] 
.gitlab-ci.yml: re-enable fedora/nettle jobs with Nettle master

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agonettle: catch both old and new error codes from base64_decode_update
Daiki Ueno [Thu, 26 Feb 2026 23:53:02 +0000 (08:53 +0900)] 
nettle: catch both old and new error codes from base64_decode_update

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agornd-fips: use Nettle 4 digest interface
Daiki Ueno [Thu, 26 Feb 2026 03:23:58 +0000 (12:23 +0900)] 
rnd-fips: use Nettle 4 digest interface

We should switch to the drbg-ctr-aes256 module provided by Nettle.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agotls1-prf: use Nettle 4 digest interface
Daiki Ueno [Thu, 26 Feb 2026 03:23:40 +0000 (12:23 +0900)] 
tls1-prf: use Nettle 4 digest interface

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agonettle: support Nettle 4 cipher interface
Daiki Ueno [Thu, 26 Feb 2026 03:14:47 +0000 (12:14 +0900)] 
nettle: support Nettle 4 cipher interface

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agonettle: support Nettle 4 hash and MAC interfaces
Daiki Ueno [Thu, 26 Feb 2026 03:10:01 +0000 (12:10 +0900)] 
nettle: support Nettle 4 hash and MAC interfaces

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agodsa-fips: omit digest_size argument for sha384_digest with Nettle 4
Daiki Ueno [Wed, 25 Feb 2026 23:19:52 +0000 (08:19 +0900)] 
dsa-fips: omit digest_size argument for sha384_digest with Nettle 4

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agoaccelerated: support GCM_DIGEST in Nettle 4
Daiki Ueno [Wed, 25 Feb 2026 23:17:43 +0000 (08:17 +0900)] 
accelerated: support GCM_DIGEST in Nettle 4

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agoMerge branch 'leak-related-tweaks' into 'master'
Alexander Sosedkin [Fri, 27 Feb 2026 10:19:48 +0000 (10:19 +0000)] 
Merge branch 'leak-related-tweaks' into 'master'

leak related tweaks, trying to catch #1799 in CI

See merge request gnutls/gnutls!2072

5 months agotests/gnutls-asan.supp: tighten up
Alexander Sosedkin [Thu, 19 Feb 2026 14:23:07 +0000 (15:23 +0100)] 
tests/gnutls-asan.supp: tighten up

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agotests/slow: remove ASAN suppression file
Alexander Sosedkin [Thu, 19 Feb 2026 14:14:20 +0000 (15:14 +0100)] 
tests/slow: remove ASAN suppression file

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agotests/tls13-early-data-neg2: add an overlooked free
Alexander Sosedkin [Thu, 19 Feb 2026 12:32:08 +0000 (13:32 +0100)] 
tests/tls13-early-data-neg2: add an overlooked free

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agotests/resume-with-*: add a few overlooked frees
Alexander Sosedkin [Thu, 19 Feb 2026 11:59:26 +0000 (12:59 +0100)] 
tests/resume-with-*: add a few overlooked frees

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agotests/resume-with-previous-*: turn functions w/o retval void
Alexander Sosedkin [Thu, 19 Feb 2026 11:58:35 +0000 (12:58 +0100)] 
tests/resume-with-previous-*: turn functions w/o retval void

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agoaccelerated: give up on defining nettle HMAC interface
Daiki Ueno [Wed, 25 Feb 2026 23:06:07 +0000 (08:06 +0900)] 
accelerated: give up on defining nettle HMAC interface

Nettle 4 doesn't provide a way to define custom HMAC instances.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agonettle: use Nettle provided function types
Daiki Ueno [Thu, 26 Feb 2026 21:57:16 +0000 (06:57 +0900)] 
nettle: use Nettle provided function types

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agonettle: include <nettle/sha[12].h> instead of deprecated <nettle/sha.h>
Daiki Ueno [Wed, 25 Feb 2026 23:03:38 +0000 (08:03 +0900)] 
nettle: include <nettle/sha[12].h> instead of deprecated <nettle/sha.h>

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agonettle: use SHA*_BLOCK_SIZE instead of deprecated SHA*_DATA_SIZE
Daiki Ueno [Wed, 25 Feb 2026 22:50:42 +0000 (07:50 +0900)] 
nettle: use SHA*_BLOCK_SIZE instead of deprecated SHA*_DATA_SIZE

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agoMerge branch 'zfridric_devel' into 'master'
Zoltán Fridrich [Mon, 23 Feb 2026 12:54:32 +0000 (12:54 +0000)] 
Merge branch 'zfridric_devel' into 'master'

Fix parsing of BIT STRING encoded EdDSA keys

Closes #1749

See merge request gnutls/gnutls!2060

5 months agoAdd tests for different EDDSA ecpoint encodings
Zoltan Fridrich [Tue, 17 Feb 2026 13:07:39 +0000 (14:07 +0100)] 
Add tests for different EDDSA ecpoint encodings

Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>
5 months agoFix parsing of BIT STRING encoded EdDSA keys
Zoltan Fridrich [Thu, 29 Jan 2026 15:49:11 +0000 (16:49 +0100)] 
Fix parsing of BIT STRING encoded EdDSA keys

Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>
5 months agoMerge branch 'const' into 'master'
Daiki Ueno [Mon, 23 Feb 2026 03:07:08 +0000 (12:07 +0900)] 
Merge branch 'const' into 'master'

Fix discard const qualifier

See merge request gnutls/gnutls!2073

5 months agoFix discard const qualifier
Rudi Heitbaum [Sun, 22 Feb 2026 09:38:01 +0000 (09:38 +0000)] 
Fix discard const qualifier

Since glibc-2.43 and ISO C23, the functions bsearch, memchr, strchr,
strpbrk, strrchr, strstr, wcschr, wcspbrk, wcsrchr, wcsstr and wmemchr
that return pointers into their input arrays now have definitions as
macros that return a pointer to a const-qualified type when the input
argument is a pointer to a const-qualified type.

additional and p pointer returns are only being used for comparisons so declare
them as const, which matches the input variable.

Fixes:
    ../../../lib/x509/hostname-verify.c: In function 'gnutls_x509_crt_check_hostname2':
    ../../../lib/x509/hostname-verify.c:165:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      165 |             ((p = strchr(hostname, ':')) != NULL ||
          |                 ^
    ../../../lib/x509/ip.c: In function 'gnutls_x509_cidr_to_rfc5280':
    ../../../lib/x509/ip.c:233:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      233 |         p = strchr(cidr, '/');
          |           ^
    ../../lib/priority.c: In function '_gnutls_resolve_priorities':
    ../../lib/priority.c:2534:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     2534 |         additional = strchr(ss, ':');
          |                    ^
    ../../lib/str.c: In function '_gnutls_hostname_compare':
    ../../lib/str.c:722:19: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      722 |                 p = strrchr(certname, '.');
          |                   ^

Signed-off-by: Rudi Heitbaum <rudi@heitbaum.com>
5 months agoMerge branch 'test-long-label-fix-leak' into 'master'
Alexander Sosedkin [Thu, 19 Feb 2026 16:41:59 +0000 (16:41 +0000)] 
Merge branch 'test-long-label-fix-leak' into 'master'

tests/pkcs11/long-label: fix a leak

Closes #1799

See merge request gnutls/gnutls!2068

5 months agotests/pkcs11/long-label: fix a leak
Alexander Sosedkin [Wed, 18 Feb 2026 17:38:52 +0000 (18:38 +0100)] 
tests/pkcs11/long-label: fix a leak

Fixes: #1799
Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agoMerge branch 'wip/asosedkin/release-3.8.12' into 'master' 3.8.12
Alexander Sosedkin [Mon, 9 Feb 2026 15:36:50 +0000 (15:36 +0000)] 
Merge branch 'wip/asosedkin/release-3.8.12' into 'master'

Release 3.8.12

Closes #1773 and #1790

See merge request gnutls/gnutls!2062

5 months agoRelease 3.8.12
Alexander Sosedkin [Thu, 5 Feb 2026 18:29:25 +0000 (19:29 +0100)] 
Release 3.8.12

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agox509/name_constraints: name_constraints_node_list_intersect over sorted
Alexander Sosedkin [Wed, 4 Feb 2026 19:03:49 +0000 (20:03 +0100)] 
x509/name_constraints: name_constraints_node_list_intersect over sorted

Fixes: #1773
Fixes: GNUTLS-SA-2026-02-09-2
Fixes: CVE-2025-14831
Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agox509/name_constraints: make types_with_empty_intersection a bitmask
Alexander Sosedkin [Wed, 4 Feb 2026 17:31:37 +0000 (18:31 +0100)] 
x509/name_constraints: make types_with_empty_intersection a bitmask

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agox509/name_constraints: implement name_constraints_node_list_union
Alexander Sosedkin [Wed, 4 Feb 2026 12:30:08 +0000 (13:30 +0100)] 
x509/name_constraints: implement name_constraints_node_list_union

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agox509/name_constraints: add sorted_view in preparation...
Alexander Sosedkin [Wed, 4 Feb 2026 08:09:46 +0000 (09:09 +0100)] 
x509/name_constraints: add sorted_view in preparation...

... for actually using it later for performance gains.

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agox509/name_constraints: introduce a rich comparator
Alexander Sosedkin [Mon, 26 Jan 2026 19:16:36 +0000 (20:16 +0100)] 
x509/name_constraints: introduce a rich comparator

These are preparatory changes before implementing N * log N intersection
over sorted lists of constraints.

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agox509/name_constraints: name_constraints_node_add_{new,copy}
Alexander Sosedkin [Thu, 5 Feb 2026 12:22:10 +0000 (13:22 +0100)] 
x509/name_constraints: name_constraints_node_add_{new,copy}

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agox509/name_constraints: reject some malformed domain names
Alexander Sosedkin [Mon, 26 Jan 2026 19:14:33 +0000 (20:14 +0100)] 
x509/name_constraints: reject some malformed domain names

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agotests/name-constraints-ip: stop swallowing errors...
Alexander Sosedkin [Mon, 26 Jan 2026 18:10:58 +0000 (19:10 +0100)] 
tests/name-constraints-ip: stop swallowing errors...

... now when it started to pass

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agox509/name_constraints: use actual zeroes in universal exclude IP NC
Alexander Sosedkin [Mon, 26 Jan 2026 18:02:27 +0000 (19:02 +0100)] 
x509/name_constraints: use actual zeroes in universal exclude IP NC

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agopre_shared_key: add null check on pskcred
Alexander Sosedkin [Thu, 29 Jan 2026 16:38:01 +0000 (17:38 +0100)] 
pre_shared_key: add null check on pskcred

Fixes: #1790
Fixes: GNUTLS-SA-2026-02-09-1
Fixes: CVE-2026-1584
Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months agoNEWS: add an entry for overflows reported by Tim Rühsen
Alexander Sosedkin [Thu, 5 Feb 2026 18:58:11 +0000 (19:58 +0100)] 
NEWS: add an entry for overflows reported by Tim Rühsen

5 months ago_gnutls_bin2hex: make it robuster against empty input
Daiki Ueno [Fri, 23 Jan 2026 07:29:25 +0000 (16:29 +0900)] 
_gnutls_bin2hex: make it robuster against empty input

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agotests: use public API in pkcs12_s2k test as possible
Daiki Ueno [Fri, 23 Jan 2026 07:18:35 +0000 (16:18 +0900)] 
tests: use public API in pkcs12_s2k test as possible

The pkcs12_s2k was using _gnutls_bin2hex, which is a private
function. This changes the test logic to compare with binary blogs
instead of hex encoded data, and switches to using a public function,
gnutls_hex_decode.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agox509: avoid integer overflow when escaping DN
Daiki Ueno [Fri, 16 Jan 2026 02:26:21 +0000 (11:26 +0900)] 
x509: avoid integer overflow when escaping DN

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agobuffer: add more extensive integer overflow checks
Daiki Ueno [Thu, 15 Jan 2026 00:31:47 +0000 (09:31 +0900)] 
buffer: add more extensive integer overflow checks

Signed-off-by: Daiki Ueno <ueno@gnu.org>
5 months agodoc/Makefile: re-add three binaries to DISTCLEANFILES
Alexander Sosedkin [Mon, 9 Feb 2026 06:46:40 +0000 (07:46 +0100)] 
doc/Makefile: re-add three binaries to DISTCLEANFILES

This has previously been fixed in
8daba130cc0c4100186af0b61bc3e65d54a46727,
but then 5300a8683d937ccf09ed01170d3bcb93d97ed605 reverted it out
together with the other change.

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months ago.gitlab-ci.yml: kill wineserver before running tests
Alexander Sosedkin [Mon, 9 Feb 2026 11:42:22 +0000 (12:42 +0100)] 
.gitlab-ci.yml: kill wineserver before running tests

5 months ago.gitlab-ci.yml: do not run fedora-i686/test w/o fedora-i686/build
Alexander Sosedkin [Mon, 9 Feb 2026 08:58:06 +0000 (09:58 +0100)] 
.gitlab-ci.yml: do not run fedora-i686/test w/o fedora-i686/build

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
5 months ago.gitlab-ci.yml: unregister qemu binfmt handler first
Alexander Sosedkin [Mon, 9 Feb 2026 08:54:31 +0000 (09:54 +0100)] 
.gitlab-ci.yml: unregister qemu binfmt handler first

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>