]>
git.ipfire.org Git - thirdparty/gnutls.git/log
Nikos Mavrogiannopoulos [Tue, 7 Aug 2018 05:13:35 +0000 (07:13 +0200)]
doc: few improvements over certificate validation text
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Tue, 7 Aug 2018 06:02:44 +0000 (06:02 +0000)]
Merge branch 'tmp-persistent-id' into 'master'
resumption: keep persistent session identifiers
Closes #484
See merge request gnutls/gnutls!721
Nikos Mavrogiannopoulos [Mon, 30 Jul 2018 19:50:35 +0000 (21:50 +0200)]
gnutls-serv: re-introduce the session identifier message
The message "If your browser supports session resuming, then you should
see the same session ID, when you press the reload button", is now printed
again even under TLS1.3.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Mon, 30 Jul 2018 14:48:26 +0000 (16:48 +0200)]
resume: keep persistent session identifiers
With the introduction of session ticket support (TLS1.2) and
TLS1.3, session identifiers have no persistency on server or
client side. Improve the situation by introducing persistent
session identifiers on server side in a backwards compatible
way.
Resolves #484
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 6 Aug 2018 15:20:34 +0000 (15:20 +0000)]
Merge branch 'tmp-handshake-interleave' into 'master'
Fix interleaved handshake handling in TLS 1.3
Closes #272
See merge request gnutls/gnutls!708
Daiki Ueno [Thu, 19 Jul 2018 13:57:59 +0000 (15:57 +0200)]
.gitlab-ci.yml: include fuzz/*.log in artifacts
Signed-off-by: Daiki Ueno <dueno@redhat.com>
Daiki Ueno [Wed, 18 Jul 2018 13:56:17 +0000 (15:56 +0200)]
tests: tls-fuzzer: enable tests relying on header fragmentation
Those tests were previously disabled because splitting of handshake
messages in a very short (< 4 bytes) fragments is not implemented.
Signed-off-by: Daiki Ueno <dueno@redhat.com>
Daiki Ueno [Thu, 2 Aug 2018 13:44:15 +0000 (15:44 +0200)]
record: send unexpected_message upon empty unencrypted records
Signed-off-by: Daiki Ueno <dueno@redhat.com>
Daiki Ueno [Fri, 27 Jul 2018 04:30:41 +0000 (06:30 +0200)]
buffers: handle very short fragmentation of handshake messages
If the received record doesn't even complete the handshake
header (i.e., the record size < 4), keep it in a temporary buffer and
let the caller receive more records. Once enough amount of data is
received, move the already received records back to record_buffer and
proceed to the normal processing.
Fixes: #272
Signed-off-by: Daiki Ueno <dueno@redhat.com>
Daiki Ueno [Fri, 27 Jul 2018 04:23:12 +0000 (06:23 +0200)]
mbuffers: introduce _mbuffer_head_push_first
This is similar to _mbuffer_enqueue, but adds an element to the
beginning of the buffer.
This is to make the incomplete header handling case easier.
Signed-off-by: Daiki Ueno <dueno@redhat.com>
Daiki Ueno [Fri, 27 Jul 2018 04:10:37 +0000 (06:10 +0200)]
_gnutls_parse_record_buffered_msgs: eliminate local variable usage
If `remain > 0` is true, `recv_buf[0].length > 0` always holds.
Combine those conditions and remove the `remain` utilizing MIN().
This is to make the incomplete header handling case easier.
Signed-off-by: Daiki Ueno <dueno@redhat.com>
Daiki Ueno [Fri, 27 Jul 2018 03:35:02 +0000 (05:35 +0200)]
buffers: avoid confusion in fragment length calculation
Previously, to calculate the fragment length, it added/subtracted one
to the ending offset back and forth; that was not easier to read and
couldn't handle empty payload messages in TLS.
Signed-off-by: Daiki Ueno <dueno@redhat.com>
Nikos Mavrogiannopoulos [Mon, 6 Aug 2018 10:33:41 +0000 (10:33 +0000)]
Merge branch 'tmp-skip-zero-rtt' into 'master'
TLS 1.3: ignore "early_data" extension
Closes #512
See merge request gnutls/gnutls!706
Daiki Ueno [Thu, 2 Aug 2018 14:59:27 +0000 (16:59 +0200)]
tlsfuzzer: update to the latest version
Also enable test-tls13-0rtt-garbage.py.
Signed-off-by: Daiki Ueno <dueno@redhat.com>
Daiki Ueno [Mon, 16 Jul 2018 09:30:05 +0000 (11:30 +0200)]
TLS 1.3: ignore "early_data" extension
As 0-RTT is still not implemented in GnuTLS, the server responds with
1-RTT, by skipping decryption failure up to max_early_data_size, as
suggested in 4.2.10 Early Data Detection.
Resolves #512
Signed-off-by: Daiki Ueno <dueno@redhat.com>
Nikos Mavrogiannopoulos [Fri, 3 Aug 2018 19:45:14 +0000 (21:45 +0200)]
p11tool: print expiration time on certificates
This is particularly useful when displaying information about a
certificate trust store.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Fri, 3 Aug 2018 14:20:11 +0000 (14:20 +0000)]
Merge branch 'tmp-handshake-return-early' into 'master'
tls1.3: server returns early on handshake when no cert is provided by client
Closes #481 and #457
See merge request gnutls/gnutls!711
Nikos Mavrogiannopoulos [Thu, 19 Jul 2018 13:52:26 +0000 (15:52 +0200)]
tls1.3: server returns early on handshake when no cert is provided by client
Under TLS1.3 the server knows the negotiated keys early, if no client
certificate is sent. In that case, the server is not only able to
transmit the session ticket immediately after its finished message,
but is also able to transmit data, similarly to false start.
Resolves #481
Resolves #457
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 23 Jul 2018 13:01:49 +0000 (15:01 +0200)]
gnutls-serv: don't close connection properly when handshake is not yet complete
In the case handshake is not yet complete and we need
to terminate, it is because of an issue. As such prefer an
unclear termination at this stage. This addresses error detection
issues with tlsfuzzer.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 2 Aug 2018 14:16:27 +0000 (16:16 +0200)]
gnutls-cli: corrected input buffer null-termination
This was a regression in the previous cleanup at
f138ff85df69976badce44a5c46157cce091020f included in
3.6.3.
Resolves #534
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 31 Jul 2018 09:37:50 +0000 (11:37 +0200)]
certtool: added example of converting to DER in manpage
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Tim Rühsen [Sat, 28 Jul 2018 09:52:06 +0000 (09:52 +0000)]
Merge branch 'tmp-fix-wabi' into 'master'
Fix gcc-8 -Wabi warnings
Closes #531
See merge request gnutls/gnutls!720
Tim Rühsen [Fri, 27 Jul 2018 21:46:50 +0000 (23:46 +0200)]
Fix gcc-8 -Wabi warnings
Fixes #531
Signed-off-by: Tim Rühsen <tim.ruehsen@gmx.de>
Nikos Mavrogiannopoulos [Fri, 27 Jul 2018 14:16:53 +0000 (14:16 +0000)]
Merge branch 'tmp-test-large-cert' into 'master'
tests: improved test suite
Closes #508 and #513
See merge request gnutls/gnutls!719
Nikos Mavrogiannopoulos [Fri, 27 Jul 2018 09:58:38 +0000 (11:58 +0200)]
ext/key_share: check the validity of server key shares
That is, when generating the public key based on the server's
key share, ensure that the algorithms match completely with
the key shares the client initially sent. This was detected
by the updated traces for TLS1.3 fuzzying.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 26 Jul 2018 13:37:58 +0000 (15:37 +0200)]
gnutls-serv: improve output under TLS1.3
That is, silence fields no longer applicable under TLS1.3
and make sure that newer functions like gnutls_session_get_desc()
get used when describing the session.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 26 Jul 2018 13:06:34 +0000 (15:06 +0200)]
fuzz: updated traces for latest TLS1.3 draft
Relates #359
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 26 Jul 2018 10:40:54 +0000 (12:40 +0200)]
tests: run tls-fuzzer PSK testsuite
Resolves #508
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 26 Jul 2018 09:27:23 +0000 (11:27 +0200)]
tests: added unit test of handshake with large certificate
This checks whether handshake message fragmentation and de-fragmentation
is functional on server and client.
Resolves #513
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 26 Jul 2018 09:02:37 +0000 (11:02 +0200)]
certtool: eliminated limits in certificate export size
That allows printing an exporting certificates of size only bounded
by avail memory.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 26 Jul 2018 08:56:25 +0000 (10:56 +0200)]
certtool: eliminate maximum limit in fields read with READ_MULTI_LINE_TOKENIZED()
This allows to generate a certificate with an extension of arbitrary size.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Tim Rühsen [Thu, 26 Jul 2018 08:04:21 +0000 (08:04 +0000)]
Merge branch 'tmp-tls13-fixes' into 'master'
Fixes on TLS1.3 support
Closes #525
See merge request gnutls/gnutls!718
Nikos Mavrogiannopoulos [Wed, 25 Jul 2018 14:41:38 +0000 (16:41 +0200)]
gnutls.h: corrected typo
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 25 Jul 2018 12:48:47 +0000 (14:48 +0200)]
send_client_hello: don't override version after HRR is received
When a Hello Retry Request is received, do not set our (transient)
version to TLS1.2 on the second client hello. That's because both
peers have already negotiated TLS1.3.
This addresses issue with peers which may send a changecipherspec
message at this stage, which is now allowed when our version is
set to be TLS1.2. Introduced test suite using openssl and resumption
using HRR which reproduces the issue.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 25 Jul 2018 11:08:35 +0000 (13:08 +0200)]
hello_ext_parse: apply the test for pre-shared key ext being last on client hello
We were incorrectly insisting on pre-shared key extension being last in
both client and server hello. That was incorrect, as only in client hello
it is required by TLS1.3 to be last.
Quoting:
The "pre_shared_key" extension MUST be the last extension in the
ClientHello (this facilitates implementation as described below).
Servers MUST check that it is the last extension and otherwise fail
the handshake with an "illegal_parameter" alert.
Resolves #525
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 24 Jul 2018 18:58:10 +0000 (20:58 +0200)]
.gitlab-ci.yml: automatically retry failed jobs
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Tue, 24 Jul 2018 14:48:32 +0000 (16:48 +0200)]
doc update
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 24 Jul 2018 14:38:08 +0000 (16:38 +0200)]
allow no certificates to be reported by the gnutls_certificate_retrieve_function callbacks
In
9829ef9a we introduced a wrapper over the older callback functions
which didn't handle this case.
Resolves #528
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 24 Jul 2018 10:13:48 +0000 (10:13 +0000)]
Merge branch 'fix-cert-callbacks' into 'master'
cert-cred: fix possible segfault when resetting cert retrieval function
Closes #528
See merge request gnutls/gnutls!714
Dmitry Eremin-Solenikov [Fri, 20 Jul 2018 17:49:28 +0000 (20:49 +0300)]
cert-cred: fix possible segfault when resetting cert retrieval function
Reset get_cert_callback3 callback to NULL if provided callback is NULL.
Otherwise after the certificate request call_legacy_cert_cb1 /
call_legacy_cert_cb2 will try to unconditionally call legacy_cert_cb1 /
legacy_cert_cb2 callback (set to NULL) leading to segfault.
Fixes: 9829ef9a3ca06d60472599df7c74ebb9a53f1fe2
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Tim Rühsen [Mon, 23 Jul 2018 20:33:17 +0000 (20:33 +0000)]
Merge branch 'misc-fixes' into 'master'
Few small patches
See merge request gnutls/gnutls!715
Dmitry Eremin-Solenikov [Sun, 22 Jul 2018 17:31:36 +0000 (20:31 +0300)]
kx: for uniformity print master secret size
During keys setup phase debug log will contain sizes of all keys and
secrets, except master secret. Dump MS length (48) to log for
uniformity.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Dmitry Eremin-Solenikov [Sun, 22 Jul 2018 17:31:09 +0000 (20:31 +0300)]
constate: dump full key block to log
Include full key block to the debug log.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Dmitry Eremin-Solenikov [Sun, 22 Jul 2018 17:30:04 +0000 (20:30 +0300)]
constate: dump MAC keys to debug log
_gnutls_set_keys() can dump client/server write keys/ivs to debug log,
but it skips MAC keys. Add MAC keys to log.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Dmitry Eremin-Solenikov [Sun, 22 Jul 2018 17:25:35 +0000 (20:25 +0300)]
constate: drop unused variable in _gnutls_set_keys
_gnutls_set_keys() creates rrnd as client random + server random, but
does not use it (it was used before for export key generation, but was
not removed when dropping support for export cipher suites).
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Fixes: 8bdb8d53aa5b4c5d04255b6c9b5f2dac8b23d51b
Dmitry Eremin-Solenikov [Sat, 21 Jul 2018 10:23:42 +0000 (13:23 +0300)]
cert auth: simplify certificate selection code
Merge pubkey_is_compat_with_cs() and select_sign_algorithm() functions
to ease extension of certificate selection code.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Nikos Mavrogiannopoulos [Sun, 22 Jul 2018 12:17:26 +0000 (12:17 +0000)]
Merge branch 'tmp-fix-521' into 'master'
Remove trailing dot from hostname input
See merge request gnutls/gnutls!709
Tim Rühsen [Thu, 19 Jul 2018 10:50:13 +0000 (12:50 +0200)]
Remove trailing dot from hostname input
Fixes #532
Signed-off-by: Tim Rühsen <tim.ruehsen@gmx.de>
Nikos Mavrogiannopoulos [Fri, 20 Jul 2018 20:12:39 +0000 (20:12 +0000)]
Merge branch 'tmp-fix-pkcs8-export' into 'master'
Addressed issue with ECDSA key export under PKCS#8
Closes #516
See merge request gnutls/gnutls!707
Nikos Mavrogiannopoulos [Tue, 17 Jul 2018 07:03:38 +0000 (09:03 +0200)]
gnutls_x509_privkey_import_ecc_raw: encode parameters on import
That makes the structure fully usable after import. In _encode_privkey()
use the lower-level _gnutls_x509_export_int2() for key encoding as the
call to higher gnutls_x509_privkey_export2() could result to an infinite
recursion when keys are incomplete.
Introduced additional tests for PKCS#8 key import and export.
Resolves: #516
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 20 Jul 2018 14:34:16 +0000 (14:34 +0000)]
Merge branch 'certtool-gost-paramset' into 'master'
certtool: use gnutls_gost_paramset_get_name
See merge request gnutls/gnutls!710
Dmitry Eremin-Solenikov [Thu, 19 Jul 2018 11:19:07 +0000 (14:19 +0300)]
certtool: use gnutls_gost_paramset_get_name
gost_param_name() predates gnutls_gost_paramset_get_name() and
gnutls_gost_paramset_t. Use current API functions instead of hand-coding
new functions.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Nikos Mavrogiannopoulos [Thu, 19 Jul 2018 09:24:04 +0000 (11:24 +0200)]
gnutls-cli: do not fail if CKA_ID is too long
Increased the buffer needed to read reasonable-sized CKA_IDs
and avoid failure when the CKA_ID is too long.
Resolves #520
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 19 Jul 2018 05:47:40 +0000 (07:47 +0200)]
.gitlab-ci.yml: combined abi-check and TLS1.3 check runs
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Thu, 19 Jul 2018 04:06:34 +0000 (06:06 +0200)]
tests: handshake-timeout: reverted virt-time.h usage
The tests nature (waiting on a socket) didn't fit well with the virt-time
implementation. Reverted to original real-time wait and improved error
detection in child process.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Mon, 16 Jul 2018 12:04:01 +0000 (14:04 +0200)]
gnutls_priority_init: fix err_pos on invalid strings
When the provided string would be resolved (e.g., due to a @ priority
being used), to a different string, then do not attempt to
detect the right location of the error. It will not be useful to the caller.
This addresses the issue of test suite failure when --with-system-priority-file
and --with-default-priority-string are provided. It also enhances the test suite
with these options being active.
Resolves #517
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 17 Jul 2018 19:55:33 +0000 (21:55 +0200)]
examples: tlsproxy: use snprintf instead of strncpy
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Tue, 17 Jul 2018 06:17:13 +0000 (08:17 +0200)]
doc: simplified documentation on threads
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 17 Jul 2018 11:53:02 +0000 (13:53 +0200)]
examples: tlsproxy: eliminated warnings
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 16 Jul 2018 07:10:21 +0000 (09:10 +0200)]
.gitlab-ci.yml: updated win32 targets
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Mon, 16 Jul 2018 06:27:54 +0000 (08:27 +0200)]
doc update
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Sun, 15 Jul 2018 16:38:40 +0000 (18:38 +0200)]
gnutls-cli: mark legacy options as deprecated
This removes the --ranges and --disable-extensions options from
the default listing of options. They are disfunctional and may
be removed in the future.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Sat, 14 Jul 2018 15:39:03 +0000 (17:39 +0200)]
.travis.yml: update brew and use nettle 3.4
Resolves #480
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Sat, 14 Jul 2018 06:39:52 +0000 (08:39 +0200)]
.gitlab-ci.yml: Werror build runs with -std=c99
This ensures that the errors reported will be relevant
for the required version of the standard.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Sat, 14 Jul 2018 15:30:49 +0000 (17:30 +0200)]
bumped versions
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Sat, 14 Jul 2018 06:27:26 +0000 (08:27 +0200)]
_gnutls_resolve_priorities: avoid gnu extension for ?: construct
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Fri, 13 Jul 2018 14:11:16 +0000 (16:11 +0200)]
NEWS: doc update
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 13 Jul 2018 12:23:28 +0000 (14:23 +0200)]
nettle/rnd-fips: updated documentation
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 13 Jul 2018 12:01:44 +0000 (14:01 +0200)]
gnutls-cli: improve error reporting with -l --priority option
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 13 Jul 2018 09:18:21 +0000 (11:18 +0200)]
cipher-listings: use the sed found by configure script and make it portable
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 13 Jul 2018 07:04:42 +0000 (09:04 +0200)]
tests: tls-fuzzer: separated SSL3.0 from TLS1.x tests
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 12 Jul 2018 14:17:02 +0000 (16:17 +0200)]
gnutls-cli-debug: do not attempt SSL3.0 negotiation when not enabled
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 12 Jul 2018 13:41:21 +0000 (15:41 +0200)]
priorities: ensure that SSL3.0 enablement fails early when disabled
That is, that a priority string with only SSL3.0 present is discarded as
invalid.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 12 Jul 2018 13:14:39 +0000 (15:14 +0200)]
The SSL 3.0 protocol is disabled on compile time by default
It can be re-enabled by specifying --enable-ssl3-support on configure script.
This is the first step before removing support for the protocol completely.
Relates #103
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 13 Jul 2018 06:45:49 +0000 (08:45 +0200)]
tests: gnutls-cli-debug.sh: corrected run under FIPS mode
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 13 Jul 2018 05:10:11 +0000 (07:10 +0200)]
doc: minor text updates
Updated text for gnutls_session_ext_master_secret_status and for
GNUTLS_NO_EXTENSIONS flag which is defunc.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Fri, 13 Jul 2018 05:08:42 +0000 (07:08 +0200)]
gnutls-cli-debug: fix EtM and extended master secret discovery
In particular do not set the GNUTLS_NO_EXTENSIONS flag by default,
and only enable block ciphers for the EtM check.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Fri, 13 Jul 2018 04:40:08 +0000 (06:40 +0200)]
tests: improved unit test of gnutls-cli-debug
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Thu, 12 Jul 2018 07:20:57 +0000 (09:20 +0200)]
gnutls-cli-debug: generalized cipher tests
That is, tests now check for either the 128-bit or the 256-bit
of the cipher consistently.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 12 Jul 2018 07:19:13 +0000 (09:19 +0200)]
gnutls-cli-debug: removed legacy tests no longer applicable
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 12 Jul 2018 07:17:11 +0000 (09:17 +0200)]
gnutls-cli-debug: detect TLS1.3 support
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 11 Jul 2018 19:26:05 +0000 (21:26 +0200)]
gnutls-cli-debug: when testing servers enable all ciphers
Resolves #515
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Daiki Ueno [Tue, 3 Jul 2018 09:33:21 +0000 (11:33 +0200)]
doc: update for TLS 1.3
Signed-off-by: Daiki Ueno <dueno@redhat.com>
Nikos Mavrogiannopoulos [Thu, 12 Jul 2018 12:57:21 +0000 (12:57 +0000)]
Merge branch 'tmp-fix-multi-async-msg' into 'master'
Fix issue preventing the parsing of certain async messages
Closes #510 and #504
See merge request gnutls/gnutls!694
Nikos Mavrogiannopoulos [Mon, 2 Jul 2018 07:56:35 +0000 (09:56 +0200)]
_gnutls13_recv_async_handshake: process multiple and split handshake messages
It is permitted to concatenate multiple async handshake messages in a single
record message as well as split large messages (NST) into multiple records.
Modified _gnutls13_recv_async_handshake() to process them correctly, instead
of assuming that they are formatted as one message per record.
Resolves #510
Resolves #504
Relates #511
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 2 Jul 2018 08:18:23 +0000 (10:18 +0200)]
tests: check whether multiple tickets can be sent/received
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 2 Jul 2018 08:11:41 +0000 (10:11 +0200)]
gnutls_session_ticket_send: allow sending multiple tickets in one go
This allows combining the tickets in a single record message when
possible.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 11 Jul 2018 17:55:28 +0000 (17:55 +0000)]
Merge branch 'tmp-limit-ticket-age' into 'master'
limit the age of session tickets
Closes #476
See merge request gnutls/gnutls!697
Nikos Mavrogiannopoulos [Wed, 4 Jul 2018 05:42:44 +0000 (07:42 +0200)]
tests: handshake-timeout: use virt_sec_sleep() to avoid long delays in test
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Mon, 2 Jul 2018 14:28:28 +0000 (16:28 +0200)]
generate_session_ticket: tickets cannot extend the original session time
That is, on a resumed session the server would not issue new tickets
that would have extended the lifetime of the originally issued ticket.
Resolves #476
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 3 Jul 2018 16:42:01 +0000 (18:42 +0200)]
pre_shared_key: do not send extension when no identities are present
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 2 Jul 2018 18:25:40 +0000 (20:25 +0200)]
tests: corrected priority strings in session-tickets-ok and other cleanups
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Tue, 3 Jul 2018 08:22:04 +0000 (10:22 +0200)]
doc: mention session ticket behavior under TLS1.3
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 2 Jul 2018 14:29:04 +0000 (16:29 +0200)]
generate_session_ticket: use a 4-byte nonce by default
It is not necessary to use large nonces.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 2 Jul 2018 14:22:04 +0000 (16:22 +0200)]
pre_shared_key: use time_t type for ticket_age variable
This is guarranteed to allow negative values, and also be 32-bits.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 2 Jul 2018 14:19:35 +0000 (16:19 +0200)]
generate_session_ticket: fixed comment
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Dmitry Eremin-Solenikov [Mon, 9 Jul 2018 15:21:20 +0000 (18:21 +0300)]
lib: document digest and paramset in gost key import functions
Document behaviour of gnutls_pubkey_import_gost_raw,
gnutls_privkey_import_gost_raw and gnutls_x509_privkey_import_gost_raw.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Dmitry Eremin-Solenikov [Mon, 9 Jul 2018 11:22:34 +0000 (14:22 +0300)]
lib/x509: use new function to deduce default GOST paramset
Use new _gnutls_gost_paramset_default() function to deduce default GOST
paramset, instead of hardcoding if/else in several places.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Dmitry Eremin-Solenikov [Mon, 9 Jul 2018 11:02:14 +0000 (14:02 +0300)]
lib: remove undefined behaviour when handling GOST paramset
Initial version of GOST patchset used param < 0 to represent unknown
value. Later special enum entry GNUTLS_GOST_PARAMSET_UNKNOWN was
introduced. Fix several leftovers comparing params to 0 directly.
Closes #505.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Nikos Mavrogiannopoulos [Mon, 9 Jul 2018 17:09:11 +0000 (17:09 +0000)]
Merge branch 'tmp-def-priority2' into 'master'
gnutls_set_default_priority2: introduced
See merge request gnutls/gnutls!680