]> git.ipfire.org Git - thirdparty/gnutls.git/log
thirdparty/gnutls.git
3 years agosocket: only set pull/push functions when --save-*-trace is used
Daiki Ueno [Tue, 26 Jul 2022 02:39:57 +0000 (11:39 +0900)] 
socket: only set pull/push functions when --save-*-trace is used

This allows gnutls-cli to use KTLS for the transport, unless either
--save-client-trace or --save-server-trace is used.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agohandshake: do not enable KTLS if custom pull/push functions are set
Daiki Ueno [Tue, 26 Jul 2022 02:38:41 +0000 (11:38 +0900)] 
handshake: do not enable KTLS if custom pull/push functions are set

If gnutls_transport_set_pull_function or
gnutls_transport_set_push_function is used, we can't assume the
underlying transport handle is an FD.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agoMerge branch 'wip/dueno/guile-skip-reauth-test' into 'master'
Daiki Ueno [Wed, 27 Jul 2022 12:39:10 +0000 (12:39 +0000)] 
Merge branch 'wip/dueno/guile-skip-reauth-test' into 'master'

guile: revert gnutls/build/tests.scm to use use-modules

See merge request gnutls/gnutls!1618

3 years agoguile: revert gnutls/build/tests.scm to use use-modules
Daiki Ueno [Wed, 27 Jul 2022 11:23:26 +0000 (20:23 +0900)] 
guile: revert gnutls/build/tests.scm to use use-modules

This partially reverts e727eb7901a3f1754de970c8529925ae3d591b90.  For
some reason, the usage of #:use-module causes some behavioral
difference that affects reauth.scm test.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agoMerge branch 'zfridric_devel2' into 'master'
Zoltán Fridrich [Tue, 26 Jul 2022 12:45:24 +0000 (12:45 +0000)] 
Merge branch 'zfridric_devel2' into 'master'

Fix memory leak in gnutls_pkcs7_import

Closes #1387

See merge request gnutls/gnutls!1616

3 years agoFix memory leak in gnutls_pkcs7_import
Zoltan Fridrich [Mon, 25 Jul 2022 14:07:54 +0000 (16:07 +0200)] 
Fix memory leak in gnutls_pkcs7_import

Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>
3 years agoMerge branch 'wip/dueno/cbc-pkcs7-pad' into 'master'
Daiki Ueno [Sat, 23 Jul 2022 00:00:55 +0000 (00:00 +0000)] 
Merge branch 'wip/dueno/cbc-pkcs7-pad' into 'master'

crypto-api: add block cipher API with automatic padding

See merge request gnutls/gnutls!1611

3 years agocrypto-api: add block cipher API with automatic padding
Daiki Ueno [Thu, 14 Jul 2022 06:19:23 +0000 (15:19 +0900)] 
crypto-api: add block cipher API with automatic padding

This adds a couple of functions gnutls_cipher_encrypt3 and
gnutls_cipher_decrypt3, which add or remove padding as necessary if
the length of the plaintext is not a multiple of the block size.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agoMerge branch 'wip/dueno/minor-f36' into 'master'
Daiki Ueno [Fri, 22 Jul 2022 08:52:42 +0000 (08:52 +0000)] 
Merge branch 'wip/dueno/minor-f36' into 'master'

Suppress compile time warnings on Fedora 36

Closes #1386

See merge request gnutls/gnutls!1606

3 years agotests: temporarily disable checking against unresolvable hosts
Daiki Ueno [Fri, 22 Jul 2022 02:54:29 +0000 (11:54 +0900)] 
tests: temporarily disable checking against unresolvable hosts

*.dane.verisignlabs.com and fedoraproject.org are no longer
resolvable.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agosrc: add __attribute__((malloc)) to safe_open_rw
Daiki Ueno [Wed, 20 Jul 2022 06:00:10 +0000 (15:00 +0900)] 
src: add __attribute__((malloc)) to safe_open_rw

This silences -Wsuggest-attribute=malloc warning with GCC 12.  While
we could use ATTRIBUTE_DEALLOC(fclose, 1), it is currently not
possible to use it until Gnulib is updated.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agosrc: add NULL check on return value of realloc used in tests
Daiki Ueno [Wed, 20 Jul 2022 05:54:48 +0000 (14:54 +0900)] 
src: add NULL check on return value of realloc used in tests

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agotests: resume-with-previous-stek: initialize session data
Daiki Ueno [Thu, 30 Jun 2022 12:24:23 +0000 (21:24 +0900)] 
tests: resume-with-previous-stek: initialize session data

Spotted by gcc-analyzer 12.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agotests: add __attribute__((__noreturn__)) to _fail and fail_ignore
Daiki Ueno [Thu, 30 Jun 2022 12:23:31 +0000 (21:23 +0900)] 
tests: add __attribute__((__noreturn__)) to _fail and fail_ignore

To suppress warnings with gcc-analyzer 12.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agocrypto-selftests: fix decryption check condition in test_cipher_aead
Daiki Ueno [Thu, 30 Jun 2022 12:13:53 +0000 (21:13 +0900)] 
crypto-selftests: fix decryption check condition in test_cipher_aead

Spotted by gcc-analyzer 12.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agox509, tpm2: use asn1_node instead of deprecated ASN1_TYPE
Daiki Ueno [Thu, 30 Jun 2022 11:57:30 +0000 (20:57 +0900)] 
x509, tpm2: use asn1_node instead of deprecated ASN1_TYPE

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agoMerge branch 'wip-session-record-port-close' into 'master'
Daiki Ueno [Tue, 19 Jul 2022 10:23:08 +0000 (10:23 +0000)] 
Merge branch 'wip-session-record-port-close' into 'master'

guile: Allow session record ports to have a 'close' procedure

See merge request gnutls/gnutls!1610

3 years agoguile: Allow session record ports to have a 'close' procedure.
Ludovic Courtès [Sun, 10 Jul 2022 21:41:26 +0000 (23:41 +0200)] 
guile: Allow session record ports to have a 'close' procedure.

This addition makes it easy to close the backing file descriptor or port
of a session when its record port is closed.

* guile/src/core.c (SCM_GNUTLS_SESSION_RECORD_PORT_SESSION): Add SCM_CAR.
(SCM_GNUTLS_SESSION_RECORD_PORT_CLOSE_PROCEDURE)
(SCM_GNUTLS_SET_SESSION_RECORD_PORT_CLOSE)
(SCM_GNUTLS_SESSION_RECORD_PORT_P)
(SCM_VALIDATE_SESSION_RECORD_PORT): New macros.
(make_session_record_port): Change "stream" argument to a pair.
(close_session_record_port): New function.
(scm_gnutls_session_record_port): Add optional 'close' parameter and
honor it.
(scm_gnutls_set_session_record_port_close_x): New function.
(scm_init_gnutls_session_record_port_type): Add call to
'scm_set_port_close' and 'scm_set_port_needs_close_on_gc'.
* guile/tests/session-record-port.scm: Test it.
* NEWS: Update.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
3 years agoMerge branch 'wip-remove-guile-1.8-support' into 'master'
Daiki Ueno [Mon, 18 Jul 2022 00:02:34 +0000 (00:02 +0000)] 
Merge branch 'wip-remove-guile-1.8-support' into 'master'

Remove support for Guile 1.8.

See merge request gnutls/gnutls!1608

3 years agoguile: Remove support for the 1.8.x series.
Ludovic Courtès [Sun, 10 Jul 2022 15:03:03 +0000 (17:03 +0200)] 
guile: Remove support for the 1.8.x series.

The last Guile 1.8.x release dates back to 2010.

* configure.ac: Remove 1.8 from 'GUILE_PKG'.
* doc/gnutls-guile.texi (Guile Preparations): Remove mention of Guile 1.8.
* guile/src/core.c (mark_session_record_port)
(free_session_record_port): Remove.
(scm_init_gnutls_session_record_port_type): Remove corresponding
'scm_set_port_mark' and 'scm_set_port_free' calls.
* guile/modules/gnutls.in: Remove top-level 'cond-expand' forms for
Guile 1.8.
* guile/modules/gnutls/build/tests.scm: Likewise.
* NEWS: Update.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
3 years agomaint: Update guile.m4.
Ludovic Courtès [Sun, 10 Jul 2022 15:02:17 +0000 (17:02 +0200)] 
maint: Update guile.m4.

* m4/guile.m4: Update from Guile 3.0.7.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
3 years agoMerge branch 'aarch64_openbsd' into 'master'
Daiki Ueno [Sat, 16 Jul 2022 08:24:38 +0000 (08:24 +0000)] 
Merge branch 'aarch64_openbsd' into 'master'

accelerated: aarch64: add OpenBSD/aarch64 support

See merge request gnutls/gnutls!1612

3 years agoaccelerated: aarch64: add OpenBSD/aarch64 support
Brad Smith [Sat, 16 Jul 2022 02:44:03 +0000 (22:44 -0400)] 
accelerated: aarch64: add OpenBSD/aarch64 support

Signed-off-by: Brad Smith <brad@comstyle.com>
3 years agoMerge branch 'wip/dueno/aes-gcm-rekey-limit' into 'master'
Daiki Ueno [Wed, 13 Jul 2022 15:29:49 +0000 (15:29 +0000)] 
Merge branch 'wip/dueno/aes-gcm-rekey-limit' into 'master'

cipher: limit plaintext length supplied to AES-GCM

See merge request gnutls/gnutls!1603

3 years agocipher: limit plaintext length supplied to AES-GCM
Daiki Ueno [Mon, 27 Jun 2022 02:14:50 +0000 (11:14 +0900)] 
cipher: limit plaintext length supplied to AES-GCM

According to SP800-38D 5.2.1.1, input data length of AES-GCM
encryption function must be less than or equal to 2^39-256 bits.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agoMerge branch 'wip-guile-premature-termination' into 'master'
Daiki Ueno [Mon, 11 Jul 2022 10:27:54 +0000 (10:27 +0000)] 
Merge branch 'wip-guile-premature-termination' into 'master'

guile: Session record port treats premature termination as EOF.

See merge request gnutls/gnutls!1609

3 years agoguile: Session record port treats premature termination as EOF.
Ludovic Courtès [Sun, 10 Jul 2022 16:54:54 +0000 (18:54 +0200)] 
guile: Session record port treats premature termination as EOF.

* guile/src/core.c (do_fill_port) [USING_GUILE_BEFORE_2_2]: Treat
GNUTLS_E_PREMATURE_TERMINATION as EOF.
(read_from_session_record_port) [!USING_GUILE_BEFORE_2_2]: Likewise.
* guile/tests/premature-termination.scm: New file.
* guile/Makefile.am (TESTS): Add it.
* NEWS: Update.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
3 years agoMerge branch 'master' into 'master'
Daiki Ueno [Sat, 9 Jul 2022 00:50:21 +0000 (00:50 +0000)] 
Merge branch 'master' into 'master'

Add self-test code inside a FIPS context

See merge request gnutls/gnutls!1607

3 years agoAdd self-test code inside a FIPS context
Richard Costa [Sat, 9 Jul 2022 00:50:21 +0000 (00:50 +0000)] 
Add self-test code inside a FIPS context

Self-test code exercise lots of different FIPS-related code with
side-effects. So, in order to prevent it from losing information when
executing inside another context, we create an appropriated one.

If the self-test fails, then the library is placed in error state, so it
doesn't matter for other contexts.

Signed-off-by: Richard Maciel Costa <richard.costa@suse.com>
3 years agoMerge branch 'zfridric_devel2' into 'master'
Zoltán Fridrich [Fri, 8 Jul 2022 09:17:17 +0000 (09:17 +0000)] 
Merge branch 'zfridric_devel2' into 'master'

Increase the limit of TLS PSK usernames

Closes #1323

See merge request gnutls/gnutls!1581

3 years agoIncrease the limit of TLS PSK usernames from 128 to 65535 characters
Zoltan Fridrich [Tue, 10 May 2022 13:20:45 +0000 (15:20 +0200)] 
Increase the limit of TLS PSK usernames from 128 to 65535 characters

Co-authored-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>
3 years agoMerge branch 'more-rsa-checks' into 'master'
Daiki Ueno [Sun, 3 Jul 2022 22:56:55 +0000 (22:56 +0000)] 
Merge branch 'more-rsa-checks' into 'master'

tests/fips-test: minor extension

See merge request gnutls/gnutls!1605

3 years agoMerge branch 'wip/dueno/ktls-fixes' into 'master'
Daiki Ueno [Thu, 30 Jun 2022 10:19:25 +0000 (10:19 +0000)] 
Merge branch 'wip/dueno/ktls-fixes' into 'master'

Minor fixes on KTLS

See merge request gnutls/gnutls!1604

3 years agoMerge branch 'wip/dueno/hkdf-limit' into 'master'
Daiki Ueno [Wed, 29 Jun 2022 11:45:23 +0000 (11:45 +0000)] 
Merge branch 'wip/dueno/hkdf-limit' into 'master'

nettle: restrict output size of HKDF-Expand to 255 * HashLen

See merge request gnutls/gnutls!1602

3 years agoMerge branch 'wip/dueno/fipscontext-log' into 'master'
Daiki Ueno [Wed, 29 Jun 2022 09:20:44 +0000 (09:20 +0000)] 
Merge branch 'wip/dueno/fipscontext-log' into 'master'

fips: make service indicator logging louder

See merge request gnutls/gnutls!1567

3 years agofips: make service indicator logging louder
Daiki Ueno [Fri, 1 Apr 2022 06:04:57 +0000 (08:04 +0200)] 
fips: make service indicator logging louder

Previously, the only way to monitor the FIPS context transtion was to
increase logging level to debug (2), which produces unrelated output.

This changes the minimum logging level to audit (1) for when the
transition happens.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agonettle: restrict output size of HKDF-Expand to 255 * HashLen
Daiki Ueno [Mon, 27 Jun 2022 00:29:13 +0000 (09:29 +0900)] 
nettle: restrict output size of HKDF-Expand to 255 * HashLen

RFC 5869 2.3 requires that requested output length of HKDF-Expand to
be equal to or less than 255 times hash output size.

Inspired by the report by Guido Vranken in:
https://lists.gnupg.org/pipermail/gcrypt-devel/2022-June/005328.html

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agotests/fips-test: minor extension
Alexander Sosedkin [Tue, 28 Jun 2022 15:22:36 +0000 (17:22 +0200)] 
tests/fips-test: minor extension

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
3 years ago.gitlab-ci.yml: add fedora-ktls pipeline
Daiki Ueno [Tue, 28 Jun 2022 04:46:44 +0000 (13:46 +0900)] 
.gitlab-ci.yml: add fedora-ktls pipeline

This is to ensure that the same testsuite succeeds even if we compile
the library with --enable-ktls and KTLS is enabled with a run-time
configuration.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agoktls: _gnutls_ktls_enable: fix GNUTLS_KTLS_SEND calculation
Daiki Ueno [Tue, 28 Jun 2022 01:53:55 +0000 (10:53 +0900)] 
ktls: _gnutls_ktls_enable: fix GNUTLS_KTLS_SEND calculation

Previously, if the first setsockopt for GNUTLS_KTLS_RECV fails and the
same socket is used for both sending and receiving, GNUTLS_KTLS_SEND
was unconditionally set.  This fixes the conditions and also adds more
logging.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agohandshake: do not reset KTLS enablement in gnutls_handshake
Daiki Ueno [Tue, 28 Jun 2022 01:23:33 +0000 (10:23 +0900)] 
handshake: do not reset KTLS enablement in gnutls_handshake

As gnutls_handshake can be repeatedly called upon non-blocking setup,
we shouldn't try to call setsockopt for KTLS upon every call.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agotests: enable KTLS config while running gnutls_ktls test
Daiki Ueno [Tue, 28 Jun 2022 00:37:22 +0000 (09:37 +0900)] 
tests: enable KTLS config while running gnutls_ktls test

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agoMerge branch 'add-tasn-bin' into 'master'
Daiki Ueno [Wed, 22 Jun 2022 00:18:37 +0000 (00:18 +0000)] 
Merge branch 'add-tasn-bin' into 'master'

README.md: explicitly install libtasn1-bin

See merge request gnutls/gnutls!1600

3 years agoREADME.md: explicitly install libtasn1-bin
Gregor Jasny [Tue, 21 Jun 2022 09:18:16 +0000 (11:18 +0200)] 
README.md: explicitly install libtasn1-bin

Signed-off-by: Gregor Jasny <gjasny@googlemail.com>
3 years agoMerge branch 'ktls-disabled-by-default' into 'master'
Daiki Ueno [Thu, 16 Jun 2022 12:14:14 +0000 (12:14 +0000)] 
Merge branch 'ktls-disabled-by-default' into 'master'

KTLS: disable by default enable by config

See merge request gnutls/gnutls!1599

3 years agoKTLS: disable by default enable by config
František Krenželok [Tue, 14 Jun 2022 14:16:11 +0000 (16:16 +0200)] 
KTLS: disable by default enable by config

KTLS will be disabled by default when build with `--enable-ktls` to
enable it, use config file option `ktls = true` in [global] section.

Signed-off-by: Frantisek Krenzelok <krenzelok.frantisek@gmail.com>
3 years agoMerge branch 'wip/dueno/force-self-test' into 'master'
Daiki Ueno [Thu, 9 Jun 2022 14:05:55 +0000 (14:05 +0000)] 
Merge branch 'wip/dueno/force-self-test' into 'master'

fips: provide function to manually run FIPS self-tests

Closes #1364

See merge request gnutls/gnutls!1598

3 years agofips: provide function to manually run FIPS self-tests
Daiki Ueno [Fri, 3 Jun 2022 06:43:00 +0000 (15:43 +0900)] 
fips: provide function to manually run FIPS self-tests

FIPS140-3 IG 10.3.E Periodic Self-Testing says:

  At security levels 1 and 2, acceptable means for initiating the
  periodic self-tests include a provided service, resetting, rebooting
  or power cycling.

Neither resetting, rebooting, nor power-cycling is suitable because
those involve operations outside of the module.  Therefore this patch
adds a new API to manually run the substance of FIPS140 self-tests.

Suggeested by Richard Costa and Stephan Mueller in:
https://gitlab.com/gnutls/gnutls/-/issues/1364

Signed-off-by: Daiki Ueno <ueno@gnu.org>
3 years agoMerge branch 'tlsfuzzer-update' into 'master'
Daiki Ueno [Mon, 6 Jun 2022 08:25:05 +0000 (08:25 +0000)] 
Merge branch 'tlsfuzzer-update' into 'master'

tests/suite/tls-fuzzer: use more -x/-X instead of -e and less -n

See merge request gnutls/gnutls!1593

4 years agotests/suite/tls-fuzzer: remove most of the -n limiters...
Alexander Sosedkin [Wed, 18 May 2022 13:38:21 +0000 (15:38 +0200)] 
tests/suite/tls-fuzzer: remove most of the -n limiters...

... since tlsfuzzer now sets reasonable (~<10s/script) limits
for most of the scripts by default

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
4 years agotests/suite/tls-fuzzer: pin current error messages with -X
Alexander Sosedkin [Wed, 18 May 2022 11:41:18 +0000 (13:41 +0200)] 
tests/suite/tls-fuzzer: pin current error messages with -X

Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>
4 years agoMerge branch 'wip/dueno/mingw-tests' into 'master'
Zoltán Fridrich [Mon, 30 May 2022 08:28:07 +0000 (08:28 +0000)] 
Merge branch 'wip/dueno/mingw-tests' into 'master'

build: Revert "Disable test scripts on windows"

Closes #1371

See merge request gnutls/gnutls!1597

4 years agobuild: Revert "Disable test scripts on windows"
Daiki Ueno [Sun, 29 May 2022 01:54:48 +0000 (10:54 +0900)] 
build: Revert "Disable test scripts on windows"

This reverts commit d2b99e3b3429e9b9a6fbff46598fd4c6a0910f65.

It turned out that the test failures under mingw were caused by a
regression in wine 7.5, possibly:
https://bugs.winehq.org/show_bug.cgi?id=52743

Now that the latest wine package based on wine 7.9 has no issues with
running those test scripts, this enables them again in the build
process.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agoMerge branch 'zfridric_devel' into 'master'
Zoltán Fridrich [Fri, 27 May 2022 10:13:33 +0000 (10:13 +0000)] 
Merge branch 'zfridric_devel' into 'master'

Release 3.7.6

See merge request gnutls/gnutls!1596

4 years agoRelease 3.7.6 3.7.6
Zoltan Fridrich [Fri, 27 May 2022 07:17:55 +0000 (09:17 +0200)] 
Release 3.7.6

Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>
4 years agoMerge branch 'mehmooda-master-patch-83491' into 'master'
Zoltán Fridrich [Wed, 25 May 2022 15:26:00 +0000 (15:26 +0000)] 
Merge branch 'mehmooda-master-patch-83491' into 'master'

libdane: fix typo in Makefile.am

See merge request gnutls/gnutls!1595

4 years agolibdane: fix typo in Makefile.am
Asad Mehmood [Mon, 23 May 2022 14:35:46 +0000 (14:35 +0000)] 
libdane: fix typo in Makefile.am

Signed-off-by: Asad Mehmood <asad78611@googlemail.com>
4 years agoMerge branch 'zfridric_devel3' into 'master'
Zoltán Fridrich [Mon, 23 May 2022 09:01:29 +0000 (09:01 +0000)] 
Merge branch 'zfridric_devel3' into 'master'

Fix out-of-bounds memcpy in gnutls_realloc_zero()

Closes #1367, #1368, and #1369

See merge request gnutls/gnutls!1592

4 years agoMerge branch 'zfridric_devel' into 'master'
Zoltán Fridrich [Mon, 23 May 2022 07:40:45 +0000 (07:40 +0000)] 
Merge branch 'zfridric_devel' into 'master'

Add release steps for windows builds

See merge request gnutls/gnutls!1590

4 years agoAdd release steps for windows builds
Zoltan Fridrich [Fri, 13 May 2022 12:37:05 +0000 (14:37 +0200)] 
Add release steps for windows builds

Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>
4 years agoFix out-of-bounds memcpy in gnutls_realloc_zero()
Zoltan Fridrich [Wed, 18 May 2022 09:43:26 +0000 (11:43 +0200)] 
Fix out-of-bounds memcpy in gnutls_realloc_zero()

Co-authored-by: Tobias Heider <tobias.heider@canonical.com>
Co-authored-by: Daiki Ueno <ueno@gnu.org>
Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>
4 years agoMerge branch 'zfridric_devel4' into 'master'
Zoltán Fridrich [Thu, 19 May 2022 15:29:25 +0000 (15:29 +0000)] 
Merge branch 'zfridric_devel4' into 'master'

Disable test scripts on windows

See merge request gnutls/gnutls!1594

4 years agoDisable test scripts on windows
Zoltan Fridrich [Thu, 19 May 2022 08:27:51 +0000 (10:27 +0200)] 
Disable test scripts on windows

This is a temporary solution to avoid failures
of test scripts when ran on windows

Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>
4 years agoMerge branch 'zfridric_devel' into 'master' 3.7.5
Zoltán Fridrich [Thu, 12 May 2022 15:45:43 +0000 (15:45 +0000)] 
Merge branch 'zfridric_devel' into 'master'

Release 3.7.5

See merge request gnutls/gnutls!1589

4 years agoRelease 3.7.5
Zoltan Fridrich [Thu, 12 May 2022 08:38:23 +0000 (10:38 +0200)] 
Release 3.7.5

Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>
4 years agoMerge branch 'wip/dueno/cmocka-stdarg' into 'master'
Zoltán Fridrich [Tue, 10 May 2022 12:22:30 +0000 (12:22 +0000)] 
Merge branch 'wip/dueno/cmocka-stdarg' into 'master'

tests/cmocka-common.h: include <stdarg.h> before <cmocka.h>

Closes #1360

See merge request gnutls/gnutls!1586

4 years agoMerge branch 'wip/dueno/psk-ke-mode' into 'master'
Daiki Ueno [Tue, 10 May 2022 12:14:47 +0000 (12:14 +0000)] 
Merge branch 'wip/dueno/psk-ke-mode' into 'master'

Fix psk_ke_modes_recv_params() wrongly setting HSK_PSK_KE_MODE_INVALID

Closes #1303

See merge request gnutls/gnutls!1563

4 years agoMerge branch 'wip/dueno/siv-iov' into 'master'
Daiki Ueno [Tue, 10 May 2022 10:45:47 +0000 (10:45 +0000)] 
Merge branch 'wip/dueno/siv-iov' into 'master'

crypto-api: support SIV ciphers with encryptv2 functions

Closes #1217 and #1312

See merge request gnutls/gnutls!1515

4 years agoMerge branch 'wip/dueno/cligen-update' into 'master'
Daiki Ueno [Tue, 10 May 2022 10:40:20 +0000 (10:40 +0000)] 
Merge branch 'wip/dueno/cligen-update' into 'master'

cligen: update git submodule

Closes #1363

See merge request gnutls/gnutls!1588

4 years agocligen: update git submodule
Daiki Ueno [Tue, 10 May 2022 07:52:26 +0000 (09:52 +0200)] 
cligen: update git submodule

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agoMerge branch 'zfridric_devel' into 'master'
Zoltán Fridrich [Mon, 9 May 2022 16:24:12 +0000 (16:24 +0000)] 
Merge branch 'zfridric_devel' into 'master'

Improve certificate sanity checks

Closes #1218

See merge request gnutls/gnutls!1583

4 years agoMerge branch 'wip/dueno/aarch64-ccasflags' into 'master'
Daiki Ueno [Mon, 9 May 2022 15:56:02 +0000 (15:56 +0000)] 
Merge branch 'wip/dueno/aarch64-ccasflags' into 'master'

configure.ac: check if compiler supports -Wa,-march=all

Closes #1317 and #1347

See merge request gnutls/gnutls!1579

4 years agoImprove certificate sanity checks
Zoltan Fridrich [Fri, 29 Apr 2022 10:28:50 +0000 (12:28 +0200)] 
Improve certificate sanity checks

Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>
4 years agoFix psk_ke_modes_recv_params() wrongly setting HSK_PSK_KE_MODE_INVALID
Tim Kosse [Mon, 28 Mar 2022 15:49:22 +0000 (17:49 +0200)] 
Fix psk_ke_modes_recv_params() wrongly setting HSK_PSK_KE_MODE_INVALID

If the preferred side (as per session->internals.priorities->server_precedence)
only supports one algorithm and if it is not the first in the other side's list
of algorithms, then psk_ke_modes_recv_params did wrongly set
session->internals.hsk_flags to HSK_PSK_KE_MODE_INVALID.

Fixes #1303

This issue was originally discovered while analyzing
https://forum.filezilla-project.org/viewtopic.php?t=54333

Signed-off-by: Tim Kosse <tim.kosse@filezilla-project.org>
Co-authored-by: Daiki Ueno <ueno@gnu.org>
4 years agotests/cmocka-common.h: include <stdarg.h> before <cmocka.h>
Daiki Ueno [Sat, 7 May 2022 08:07:01 +0000 (10:07 +0200)] 
tests/cmocka-common.h: include <stdarg.h> before <cmocka.h>

As documented in <https://api.cmocka.org/group__cmocka.html#details>,
<stdarg.h> must be included before <cmocka.h>.

Suggested by Brad Smith in:
https://gitlab.com/gnutls/gnutls/-/issues/1360

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agoconfigure.ac: check if compiler supports -Wa,-march=all
Daiki Ueno [Fri, 29 Apr 2022 10:01:53 +0000 (12:01 +0200)] 
configure.ac: check if compiler supports -Wa,-march=all

Clang from LLVM 13.0.0 caused a segumentation fault if an unknown
architecture is supplied through -march.  While this has been fixed in
13.0.1, until it is widely deployed this adds a configure check as a
safeguard:
https://github.com/llvm/llvm-project/commit/d31f8cc6884ba3cc3e088fd57c4c533868e8a8b2

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agognutls_aead_cipher_set_key: new function
Daiki Ueno [Sat, 15 Jan 2022 10:27:20 +0000 (11:27 +0100)] 
gnutls_aead_cipher_set_key: new function

This adds gnutls_aead_cipher_set_key, which enables to reuse the same
handle but reset the context and key, without releasing the memory.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agocrypto-api: support AES-SIV with scatter-gather API
Daiki Ueno [Mon, 17 Jan 2022 10:48:39 +0000 (11:48 +0100)] 
crypto-api: support AES-SIV with scatter-gather API

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agocrypto-api: refactor iov_store_st operations
Daiki Ueno [Mon, 17 Jan 2022 10:17:46 +0000 (11:17 +0100)] 
crypto-api: refactor iov_store_st operations

This replaces copy_from_iov to more generic append_from_iov.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agocrypto-api: split scatter-gather AEAD implementation to helper funcs
Daiki Ueno [Mon, 17 Jan 2022 09:36:44 +0000 (10:36 +0100)] 
crypto-api: split scatter-gather AEAD implementation to helper funcs

These _encryptv, _encryptv2, and _decryptv2 functions take orthogonal
code paths depending on whether the underlying AEAD implementation
supports message based API.  This patch split the implementation to
dedicated helper functions.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agocrypto-api: add integer overflow checks around copying IOV
Daiki Ueno [Mon, 17 Jan 2022 09:07:02 +0000 (10:07 +0100)] 
crypto-api: add integer overflow checks around copying IOV

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agoMerge branch 'wip/dueno/bsdsed' into 'master'
Daiki Ueno [Thu, 5 May 2022 12:28:18 +0000 (12:28 +0000)] 
Merge branch 'wip/dueno/bsdsed' into 'master'

tests/cert-tests/pkcs12.sh: use portable sed invocations

See merge request gnutls/gnutls!1584

4 years agoMerge branch 'zfridric_devel4' into 'master'
Zoltán Fridrich [Thu, 5 May 2022 11:50:48 +0000 (11:50 +0000)] 
Merge branch 'zfridric_devel4' into 'master'

Extend fipshmac to take a path to libgnutls.so

Closes #1359

See merge request gnutls/gnutls!1585

4 years agoExtend fipshmac to take a path to libgnutls.so
Zoltan Fridrich [Thu, 5 May 2022 10:10:46 +0000 (12:10 +0200)] 
Extend fipshmac to take a path to libgnutls.so

Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>
4 years ago.github/workflows/macos.yml: display tests/cert-tests/*.log
Daiki Ueno [Wed, 4 May 2022 13:27:16 +0000 (15:27 +0200)] 
.github/workflows/macos.yml: display tests/cert-tests/*.log

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agolib/fips.c: suppress -Wdiscarded-qualifiers warning
Daiki Ueno [Wed, 4 May 2022 13:23:49 +0000 (15:23 +0200)] 
lib/fips.c: suppress -Wdiscarded-qualifiers warning

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years ago.gitignore: ignore tests/tls13/compress-cert*
Daiki Ueno [Wed, 4 May 2022 13:22:16 +0000 (15:22 +0200)] 
.gitignore: ignore tests/tls13/compress-cert*

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agotests/cert-tests/pkcs12.sh: use portable sed invocations
Daiki Ueno [Wed, 4 May 2022 13:19:17 +0000 (15:19 +0200)] 
tests/cert-tests/pkcs12.sh: use portable sed invocations

The BSD sed doesn't recognize '\|' as the alternative operator, and
the last '}' must be preceded with a newline.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agoMerge branch 'wip/dueno/session-ticket-tls13-only' into 'master'
Daiki Ueno [Wed, 4 May 2022 11:14:18 +0000 (11:14 +0000)] 
Merge branch 'wip/dueno/session-ticket-tls13-only' into 'master'

tls: add flag to disable session ticket in TLS 1.2

Closes #477

See merge request gnutls/gnutls!1475

4 years agotls: add flag to disable session ticket in TLS 1.2
Daiki Ueno [Tue, 21 Sep 2021 06:07:25 +0000 (08:07 +0200)] 
tls: add flag to disable session ticket in TLS 1.2

The existing GNUTLS_NO_TICKETS flag affects all versions of TLS, where
PFS is assured in TLS 1.3, while it is not in TLS 1.2.  This adds a
new flag GNUTLS_NO_TICKETS_TLS12 to allow applications to disable
session tickets only in TLS 1.2.

As the only means of resumption in TLS 1.3 is using session tickets,
we could repurpose the GNUTLS_NO_TICKETS flag make it no-op in TLS
1.3.  However it would break backward compatibility, so we defer it to
the next major release.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agosession_ticket: avoid invalid free on error path
Daiki Ueno [Sun, 28 Nov 2021 10:31:30 +0000 (11:31 +0100)] 
session_ticket: avoid invalid free on error path

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years ago_gnutls_version_max: return NULL if priorities are not populated
Daiki Ueno [Tue, 21 Sep 2021 09:08:06 +0000 (11:08 +0200)] 
_gnutls_version_max: return NULL if priorities are not populated

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agoMerge branch 'wip/dueno/minor' into 'master'
Daiki Ueno [Tue, 3 May 2022 07:52:06 +0000 (07:52 +0000)] 
Merge branch 'wip/dueno/minor' into 'master'

.github/workflows/macos.yml: pull in gtk-doc

See merge request gnutls/gnutls!1580

4 years agom4: update from autoconf-archive
Daiki Ueno [Mon, 2 May 2022 05:41:12 +0000 (07:41 +0200)] 
m4: update from autoconf-archive

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years ago.github/workflows/macos.yml: pull in gtk-doc
Daiki Ueno [Sun, 17 Apr 2022 08:56:35 +0000 (10:56 +0200)] 
.github/workflows/macos.yml: pull in gtk-doc

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agoMerge branch 'wip/dueno/ci-remove-valgrind' into 'master'
Daiki Ueno [Sun, 1 May 2022 07:44:44 +0000 (07:44 +0000)] 
Merge branch 'wip/dueno/ci-remove-valgrind' into 'master'

.gitlab-ci.yml: replace valgrind checks with ASan

See merge request gnutls/gnutls!1467

4 years agoMerge branch 'zfridric_devel' into 'master'
Zoltán Fridrich [Thu, 28 Apr 2022 14:50:11 +0000 (14:50 +0000)] 
Merge branch 'zfridric_devel' into 'master'

gnutls-cli, gnutls-serv: print supported channel binding

Closes #1350

See merge request gnutls/gnutls!1578

4 years agognutls-cli, gnutls-serv: print supported channel binding
Zoltan Fridrich [Thu, 28 Apr 2022 10:17:16 +0000 (12:17 +0200)] 
gnutls-cli, gnutls-serv: print supported channel binding

Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>
4 years ago.gitlab-ci.yml: replace valgrind checks with ASan
Daiki Ueno [Sat, 4 Sep 2021 05:16:18 +0000 (07:16 +0200)] 
.gitlab-ci.yml: replace valgrind checks with ASan

Running the full test suite under valgrind wastes a lot of time and
may cause intermittent failures due to timeout.  We have them mainly
for VALGRIND_MAKE_MEM_UNDEFINED client request, though the ASan tests
now cover the equivalent after
f23c3a6cba43706a6ebb3f9b0018cd658dcc0a72.

Signed-off-by: Daiki Ueno <ueno@gnu.org>
4 years agoMerge branch 'zfridric_devel' into 'master'
Zoltán Fridrich [Tue, 26 Apr 2022 15:43:52 +0000 (15:43 +0000)] 
Merge branch 'zfridric_devel' into 'master'

Use packit to automate fedora upstream release

See merge request gnutls/gnutls!1575