summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* tlsfuzzer: use random port for tls-fuzzer-cert testDmitry Eremin-Solenikov2018-09-272-13/+17
| | | | | | | Like the rest of tls-fuzzer tests, pass "-p PORT" to subtests, allowing usage of random port for server. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
* Merge branch 'tmp-fix-mech-list-generation' into 'master'Dmitry Eremin-Solenikov2018-09-261-1/+19
|\ | | | | | | | | mech-list.h: generate unique entries See merge request gnutls/gnutls!761
| * mech-list.h: generate unique entriestmp-fix-mech-list-generationNikos Mavrogiannopoulos2018-09-261-1/+19
|/ | | | Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* released 3.6.4gnutls_3_6_4Nikos Mavrogiannopoulos2018-09-241-1/+1
| | | | Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
* tests: pkcs12-utf8 depend on bashtmp-enable-tls13Nikos Mavrogiannopoulos2018-09-241-2/+3
| | | | | | | | | The NetBSD default shell cannot handle the UTF-8 strings we use in that script. Resolves #544 Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* bumped versions and updated NEWS fileNikos Mavrogiannopoulos2018-09-243-8/+16
| | | | Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* Enable the TLS1.3 protocol by defaultNikos Mavrogiannopoulos2018-09-248-62/+4
| | | | | | | As the protocol has been finalized, and the implementation is stable and interoperable, there is no need to enable it conditionally. Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* Merge branch 'tmp-pkcs11-lax-search' into 'master'Nikos Mavrogiannopoulos2018-09-246-43/+246
|\ | | | | | | | | | | | | Provide a less restrictive PKCS#11 search of certificates Closes #569 See merge request gnutls/gnutls!757
| * Provide a more flexible PKCS#11 search of trust store certificatestmp-pkcs11-lax-searchNikos Mavrogiannopoulos2018-09-216-43/+246
| | | | | | | | | | | | | | | | | | | | This addresses the problem where the CA certificate doesn't have a subject key identifier whereas the end certificates have an authority key identifier. Resolves #569 Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* | Merge branch 'tmp-be-strict-on-crls' into 'master'Nikos Mavrogiannopoulos2018-09-2110-12/+235
|\ \ | | | | | | | | | | | | | | | | | | gnutls-cli enables CRL validation on startup Closes #564 See merge request gnutls/gnutls!752
| * | gnutls-cli: enable CRL validation on startupNikos Mavrogiannopoulos2018-09-215-5/+204
| | | | | | | | | | | | | | | | | | | | | | | | This also makes the failure in adding CRLs or CAs, a fatal error. Resolves #564 Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
| * | trust list: added flag to force failure on CRL validation errorNikos Mavrogiannopoulos2018-09-215-7/+31
| |/ | | | | | | | | | | | | This allows an application to be notified of the addition of invalid CRLs in the trust list. Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* | Merge branch 'tmp-session-ticket-key-rotation-ajuaristi' into 'master'Nikos Mavrogiannopoulos2018-09-2115-104/+1127
|\ \ | |/ |/| | | | | | | | | Session ticket key rotation with TOTP Closes #184 See merge request gnutls/gnutls!695
| * session tickets: check timestamp for validitytmp-session-ticket-key-rotation-ajuaristiNikos Mavrogiannopoulos2018-09-204-28/+29
| | | | | | | | | | | | | | | | | | We were previously only relying on the client's view of the ticket lifetime for TLS1.3 tickets. This makes sure that we only resume tickets that the server considers valid and consolidates the expiration time checks to _gnutls_check_resumed_params(). Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
| * tests: use virt-time.h in resumption testsNikos Mavrogiannopoulos2018-09-193-13/+22
| | | | | | | | Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
| * Added session ticket key rotation with TOTPAnder Juaristi2018-09-1911-71/+1084
| | | | | | | | | | | | | | | | | | | | | | This introduces session ticket key rotation on server side. The key set with gnutls_session_ticket_enable_server() is used as a master key to generate time-based keys for tickets. The rotation relates to the gnutls_db_set_cache_expiration() period. Resolves #184 Signed-off-by: Ander Juaristi <a@juaristi.eus>
* | Merge branch 'tmp-rm-mech-list' into 'master'Nikos Mavrogiannopoulos2018-09-201-232/+0
|\ \ | | | | | | | | | | | | Remove auto-generated src/mech-list.h from repo See merge request gnutls/gnutls!753
| * | Remove auto-generated src/mech-list.h from repoTim Rühsen2018-09-201-232/+0
|/ / | | | | | | Signed-off-by: Tim Rühsen <tim.ruehsen@gmx.de>
* | Merge branch 'tmp-res-prio' into 'master'Nikos Mavrogiannopoulos2018-09-202-5/+4
|\ \ | | | | | | | | | | | | Fix issue introduced in 20886264fe See merge request gnutls/gnutls!756
| * | Fix issue introduced in 20886264feTim Rühsen2018-09-202-5/+4
|/ / | | | | | | | | | | | | This makes _gnutls_resolve_priorities() return a string that is always allocated with the gnutls memory functions. Signed-off-by: Tim Rühsen <tim.ruehsen@gmx.de>
* | ECC export/import: updated documentation on EdDSA curvesNikos Mavrogiannopoulos2018-09-205-13/+36
| | | | | | | | | | | | | | | | This clarifies the format that parameters in the EdDSA curves will be returned, and also ensures that the import/export functions fail on unsupported curves. Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* | Merge branch 'gost-endianness' into 'master'Nikos Mavrogiannopoulos2018-09-2011-23/+89
|\ \ | |/ |/| | | | | GOST endianness See merge request gnutls/gnutls!755
| * certtool: print GOST public key with MSB firstDmitry Eremin-Solenikov2018-09-181-0/+15
| | | | | | | | | | | | | | OpenSSL and other libraries print MSB first, when printing GOST public keys. Let's return to this convention. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
| * x509: print_pubkey: print GOST public key with MSB firstDmitry Eremin-Solenikov2018-09-182-3/+16
| | | | | | | | | | | | | | OpenSSL and other libraries print MSB first, when printing GOST public keys. Let's return to this convention. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
| * lib: use little endian when importing/exporting GOST keysDmitry Eremin-Solenikov2018-09-186-20/+31
| | | | | | | | | | | | | | | | GOST R 34.10 native format is little endian. It is better for the application code to use native format data to interface library, rather than convert buffers on their own. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
| * mpi: add function to dprint mpi in little endiannessDmitry Eremin-Solenikov2018-09-182-0/+27
|/ | | | | | | Add little endian counterpart to _gnutls_mpi_dprint and _gnutls_mpi_dprint_le. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
* Merge branch 'fix-gost-docs' into 'master'Dmitry Eremin-Solenikov2018-09-181-8/+8
|\ | | | | | | | | gnutls.h: correct GOST R number references See merge request gnutls/gnutls!750
| * gnutls.h: correct GOST R number references [ci skip]Dmitry Eremin-Solenikov2018-09-181-8/+8
|/ | | | | | | | | Fix numeric GOST R ids used in documentation, too many numbers: - GOST R 34.11 is digest function - GOST R 34.10-2001 is a digital signature over GOST R 34.11-94 digest - GOST R 34.10-2012 is a digital signature over GOST R 34.11-2012 digest Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
* Update git submodules via ./bootstrapTim Rühsen2018-09-173-7/+10
| | | | | | | Setting $SUBMODULE_NOFETCH to a non-empty value adds --no-fetch to the git command (for CI speedup). Signed-off-by: Tim Rühsen <tim.ruehsen@gmx.de>
* tests: pkcs1-pad: run with SHA-1 enabled or disabledtmp-sha1-fix-testNikos Mavrogiannopoulos2018-09-171-3/+1
| | | | Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* .gitlab-ci.yml: enable run with SHA-1 enabledNikos Mavrogiannopoulos2018-09-173-3/+14
| | | | | | | This adds a CI run with SHA-1 enabled, and corrects issues in the testsuite when that's the case. Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* gnutls_x509_trust_list_add_trust_mem: fix behavior with unaccounted certsNikos Mavrogiannopoulos2018-09-171-1/+7
| | | | | | | | | If gnutls_x509_trust_list_add_cas returns less than clist_size, the additional unaccounted certificates will never be freed. Relates #552 Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* gnutls_x509_trust_list_add_cas: corrected return valueNikos Mavrogiannopoulos2018-09-171-1/+1
| | | | | | | | | | When the flag GNUTLS_TL_USE_IN_TLS is used and add_new_ca_to_rdn_seq the return value did not include the last certificate added to the list. This corrects its return value. Relates #552 Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* fixed documentation in trust list functionsNikos Mavrogiannopoulos2018-09-171-14/+26
| | | | | | | | | That clarifies and addresses issues in the documentation of gnutls_x509_trust_list_add_crls() and gnutls_x509_trust_list_add_cas() Relates #552 Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* Merge branch 'tmp-crl' into 'master'Nikos Mavrogiannopoulos2018-09-179-10/+105
|\ | | | | | | | | certtool: crl handling updates See merge request gnutls/gnutls!747
| * tests: added CRL verification testsNikos Mavrogiannopoulos2018-09-176-1/+92
| | | | | | | | | | | | | | | | | | This tests CRL verification with certtool --verify-crl on correct and incorrect cases. Relates #564 Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
| * certtool: updates in documentation in messages for CRL generationNikos Mavrogiannopoulos2018-09-173-9/+13
|/ | | | | | | | This fixes the messages printed for the generation of a CRL, and makes the return code of the CRL verification depending on the verification result. Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
* Fix variable used in reallocationNikos Mavrogiannopoulos2018-09-141-1/+1
| | | | | | | | | | This corrects the variable name used in the sizeof argument for realloc. This does not alter the actual allocation size, but rather it fixes a logic error. Relates: #554 Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* .gitignore: updatedNikos Mavrogiannopoulos2018-09-141-1/+16
| | | | Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* dtls: recover when a NewSessionTicket message is lostNikos Mavrogiannopoulos2018-09-143-7/+264
| | | | | | | | | | | When the server's NewSessionTicket gets lost while the ChangeCipherSpec goes through, the client did not request retransmission by retransmitting his last flight, and the handshake was blocked. This commit addresses the issue and adds a reproducer. Resolves #543 Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* tlsfuzzer: remove duplicate tests and sort them alphabeticallyDaiki Ueno2018-09-141-28/+20
| | | | Signed-off-by: Daiki Ueno <dueno@redhat.com>
* doc: fix reference to invocation nodesAndreas Schwab2018-09-141-6/+6
| | | | Signed-off-by: Andreas Schwab <schwab@suse.de>
* priority: be backwards compatible with priority strings starting with NONENikos Mavrogiannopoulos2018-09-126-15/+39
| | | | | | | | | | | That is, we allow priority strings which do not enable any groups to work, by disabling TLS1.3. For example 'NONE:+VERS-TLS-ALL:+MAC-ALL:+RSA:+AES-128-GCM:+SIGN-ALL:+COMP-NULL' is still operational, but no TLS1.3 is enabled when specified. Resolves: #549 Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* Merge branch 'tmp-strdup' into 'master'Tim Rühsen2018-08-303-9/+3
|\ | | | | | | | | Use gnutls_strdup() in library code See merge request gnutls/gnutls!742
| * Use gnutls_strdup() instead of strdup() in library codetmp-strdupTim Rühsen2018-08-242-3/+3
| | | | | | | | Signed-off-by: Tim Rühsen <tim.ruehsen@gmx.de>
| * Remove gnulib work-around '#undef strdup'Tim Rühsen2018-08-241-6/+0
|/ | | | | | | The 'issue' should be fixed already. Even if not, it has to addressed in gnulib. Signed-off-by: Tim Rühsen <tim.ruehsen@gmx.de>
* Merge branch 'tmp-psk-ext-refactor' into 'master'Daiki Ueno2018-08-239-139/+150
|\ | | | | | | | | tls13/psk_ext_parser: simplify the iterator interface See merge request gnutls/gnutls!736
| * ext/pre_shared_key: use consistent name for regitration entryDaiki Ueno2018-08-235-6/+6
| | | | | | | | Signed-off-by: Daiki Ueno <dueno@redhat.com>
| * ext/pre_shared_key: make ticket age calculation consistentDaiki Ueno2018-08-231-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously we used a pattern like this: uint32_t obfuscated_ticket_age, ticket_age_add; time_t ticket_age; ticket_age = obfuscated_ticket_age - ticket_age_add; if (ticket_age < 0) { ... } This always evaluates to false, because subtraction between unsigned integers yields an unsigned integer. Let's do the comparison before subtraction and also use correct types for representing time: uint32_t for protocol time and time_t for system time. Signed-off-by: Daiki Ueno <dueno@redhat.com>
| * tls13/psk_ext_parser: simplify the iterator interfaceDaiki Ueno2018-08-235-123/+134
|/ | | | | | | | Previously it was unclear whether psk_ext_parser_st is stateful or not. This change introduces the simpler API to iterate over the immutable data (psk_ext_parser_st), following the iterator pattern. Signed-off-by: Daiki Ueno <dueno@redhat.com>