Accepting request 642097 from security:tls
OBS-URL: https://build.opensuse.org/request/show/642097 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gnutls?expand=0&rev=114
This commit is contained in:
commit
4fe1ee2215
107
disable-psk-file-test.patch
Normal file
107
disable-psk-file-test.patch
Normal file
@ -0,0 +1,107 @@
|
|||||||
|
diff --git a/tests/Makefile.in b/tests/Makefile.in
|
||||||
|
index 07433e0..4ecd431 100644
|
||||||
|
--- a/tests/Makefile.in
|
||||||
|
+++ b/tests/Makefile.in
|
||||||
|
@@ -457,7 +457,7 @@ am__EXEEXT_10 = tls13/supported_versions$(EXEEXT) \
|
||||||
|
pkcs7-gen$(EXEEXT) dtls-etm$(EXEEXT) \
|
||||||
|
x509sign-verify-rsa$(EXEEXT) x509sign-verify-ecdsa$(EXEEXT) \
|
||||||
|
x509sign-verify-gost$(EXEEXT) mini-alignment$(EXEEXT) \
|
||||||
|
- oids$(EXEEXT) atfork$(EXEEXT) prf$(EXEEXT) psk-file$(EXEEXT) \
|
||||||
|
+ oids$(EXEEXT) atfork$(EXEEXT) prf$(EXEEXT) \
|
||||||
|
priority-init2$(EXEEXT) status-request$(EXEEXT) \
|
||||||
|
status-request-ok$(EXEEXT) status-request-missing$(EXEEXT) \
|
||||||
|
sign-verify-ext$(EXEEXT) fallback-scsv$(EXEEXT) \
|
||||||
|
@@ -1590,8 +1590,6 @@ privkey_verify_broken_OBJECTS = privkey-verify-broken.$(OBJEXT)
|
||||||
|
privkey_verify_broken_LDADD = $(LDADD)
|
||||||
|
privkey_verify_broken_DEPENDENCIES = $(COMMON_GNUTLS_LDADD) \
|
||||||
|
libutils.la $(am__DEPENDENCIES_2)
|
||||||
|
-psk_file_SOURCES = psk-file.c
|
||||||
|
-psk_file_OBJECTS = psk-file.$(OBJEXT)
|
||||||
|
psk_file_LDADD = $(LDADD)
|
||||||
|
psk_file_DEPENDENCIES = $(COMMON_GNUTLS_LDADD) libutils.la \
|
||||||
|
$(am__DEPENDENCIES_2)
|
||||||
|
@@ -2723,7 +2721,7 @@ am__depfiles_remade = ./$(DEPDIR)/alerts.Po \
|
||||||
|
./$(DEPDIR)/priority-init2.Po ./$(DEPDIR)/priority-mix.Po \
|
||||||
|
./$(DEPDIR)/priority-set.Po ./$(DEPDIR)/priority-set2.Po \
|
||||||
|
./$(DEPDIR)/privkey-keygen.Po \
|
||||||
|
- ./$(DEPDIR)/privkey-verify-broken.Po ./$(DEPDIR)/psk-file.Po \
|
||||||
|
+ ./$(DEPDIR)/privkey-verify-broken.Po \
|
||||||
|
./$(DEPDIR)/pskself.Po ./$(DEPDIR)/pubkey-import-export.Po \
|
||||||
|
./$(DEPDIR)/random-art.Po ./$(DEPDIR)/record-pad.Po \
|
||||||
|
./$(DEPDIR)/record-retvals.Po \
|
||||||
|
@@ -3021,7 +3019,7 @@ SOURCES = $(libpkcs11mock1_la_SOURCES) $(libutils_la_SOURCES) alerts.c \
|
||||||
|
pkcs7-gen.c pkcs8-key-decode.c pkcs8-key-decode-encrypted.c \
|
||||||
|
prf.c priorities.c priorities-groups.c priority-init2.c \
|
||||||
|
priority-mix.c priority-set.c priority-set2.c privkey-keygen.c \
|
||||||
|
- privkey-verify-broken.c psk-file.c pskself.c \
|
||||||
|
+ privkey-verify-broken.c pskself.c \
|
||||||
|
pubkey-import-export.c random-art.c record-pad.c \
|
||||||
|
record-retvals.c record-sizes.c record-sizes-range.c \
|
||||||
|
record-timeouts.c recv-data-before-handshake.c \
|
||||||
|
@@ -3183,7 +3181,7 @@ DIST_SOURCES = $(am__libpkcs11mock1_la_SOURCES_DIST) \
|
||||||
|
pkcs7-gen.c pkcs8-key-decode.c pkcs8-key-decode-encrypted.c \
|
||||||
|
prf.c priorities.c priorities-groups.c priority-init2.c \
|
||||||
|
priority-mix.c priority-set.c priority-set2.c privkey-keygen.c \
|
||||||
|
- privkey-verify-broken.c psk-file.c pskself.c \
|
||||||
|
+ privkey-verify-broken.c pskself.c \
|
||||||
|
pubkey-import-export.c random-art.c record-pad.c \
|
||||||
|
record-retvals.c record-sizes.c record-sizes-range.c \
|
||||||
|
record-timeouts.c recv-data-before-handshake.c \
|
||||||
|
@@ -4734,7 +4732,7 @@ ctests = tls13/supported_versions tls13/tls12-no-tls13-exts \
|
||||||
|
x509-cert-callback-ocsp gnutls_ocsp_resp_list_import2 \
|
||||||
|
server-sign-md5-rep privkey-keygen mini-tls-nonblock no-signal \
|
||||||
|
pkcs7-gen dtls-etm x509sign-verify-rsa x509sign-verify-ecdsa \
|
||||||
|
- x509sign-verify-gost mini-alignment oids atfork prf psk-file \
|
||||||
|
+ x509sign-verify-gost mini-alignment oids atfork prf \
|
||||||
|
priority-init2 status-request status-request-ok \
|
||||||
|
status-request-missing sign-verify-ext fallback-scsv \
|
||||||
|
pkcs8-key-decode urls dtls-rehandshake-cert key-usage-rsa \
|
||||||
|
@@ -5872,10 +5870,6 @@ privkey-verify-broken$(EXEEXT): $(privkey_verify_broken_OBJECTS) $(privkey_verif
|
||||||
|
@rm -f privkey-verify-broken$(EXEEXT)
|
||||||
|
$(AM_V_CCLD)$(LINK) $(privkey_verify_broken_OBJECTS) $(privkey_verify_broken_LDADD) $(LIBS)
|
||||||
|
|
||||||
|
-psk-file$(EXEEXT): $(psk_file_OBJECTS) $(psk_file_DEPENDENCIES) $(EXTRA_psk_file_DEPENDENCIES)
|
||||||
|
- @rm -f psk-file$(EXEEXT)
|
||||||
|
- $(AM_V_CCLD)$(LINK) $(psk_file_OBJECTS) $(psk_file_LDADD) $(LIBS)
|
||||||
|
-
|
||||||
|
pskself$(EXEEXT): $(pskself_OBJECTS) $(pskself_DEPENDENCIES) $(EXTRA_pskself_DEPENDENCIES)
|
||||||
|
@rm -f pskself$(EXEEXT)
|
||||||
|
$(AM_V_CCLD)$(LINK) $(pskself_OBJECTS) $(pskself_LDADD) $(LIBS)
|
||||||
|
@@ -6862,7 +6856,6 @@ distclean-compile:
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/priority-set2.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/privkey-keygen.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/privkey-verify-broken.Po@am__quote@ # am--include-marker
|
||||||
|
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/psk-file.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pskself.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pubkey-import-export.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/random-art.Po@am__quote@ # am--include-marker
|
||||||
|
@@ -8913,13 +8906,6 @@ prf.log: prf$(EXEEXT)
|
||||||
|
--log-file $$b.log --trs-file $$b.trs \
|
||||||
|
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
|
||||||
|
"$$tst" $(AM_TESTS_FD_REDIRECT)
|
||||||
|
-psk-file.log: psk-file$(EXEEXT)
|
||||||
|
- @p='psk-file$(EXEEXT)'; \
|
||||||
|
- b='psk-file'; \
|
||||||
|
- $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
|
||||||
|
- --log-file $$b.log --trs-file $$b.trs \
|
||||||
|
- $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
|
||||||
|
- "$$tst" $(AM_TESTS_FD_REDIRECT)
|
||||||
|
priority-init2.log: priority-init2$(EXEEXT)
|
||||||
|
@p='priority-init2$(EXEEXT)'; \
|
||||||
|
b='priority-init2'; \
|
||||||
|
@@ -10883,7 +10869,6 @@ distclean: distclean-recursive
|
||||||
|
-rm -f ./$(DEPDIR)/priority-set2.Po
|
||||||
|
-rm -f ./$(DEPDIR)/privkey-keygen.Po
|
||||||
|
-rm -f ./$(DEPDIR)/privkey-verify-broken.Po
|
||||||
|
- -rm -f ./$(DEPDIR)/psk-file.Po
|
||||||
|
-rm -f ./$(DEPDIR)/pskself.Po
|
||||||
|
-rm -f ./$(DEPDIR)/pubkey-import-export.Po
|
||||||
|
-rm -f ./$(DEPDIR)/random-art.Po
|
||||||
|
@@ -11318,7 +11303,6 @@ maintainer-clean: maintainer-clean-recursive
|
||||||
|
-rm -f ./$(DEPDIR)/priority-set2.Po
|
||||||
|
-rm -f ./$(DEPDIR)/privkey-keygen.Po
|
||||||
|
-rm -f ./$(DEPDIR)/privkey-verify-broken.Po
|
||||||
|
- -rm -f ./$(DEPDIR)/psk-file.Po
|
||||||
|
-rm -f ./$(DEPDIR)/pskself.Po
|
||||||
|
-rm -f ./$(DEPDIR)/pubkey-import-export.Po
|
||||||
|
-rm -f ./$(DEPDIR)/random-art.Po
|
@ -1,55 +0,0 @@
|
|||||||
diff --git a/lib/cert-cred.c b/lib/cert-cred.c
|
|
||||||
index d3777e51f..2150e903f 100644
|
|
||||||
--- a/lib/cert-cred.c
|
|
||||||
+++ b/lib/cert-cred.c
|
|
||||||
@@ -387,6 +387,13 @@ static int call_legacy_cert_cb1(gnutls_session_t session,
|
|
||||||
if (ret < 0)
|
|
||||||
return gnutls_assert_val(ret);
|
|
||||||
|
|
||||||
+ if (st2.ncerts == 0) {
|
|
||||||
+ *pcert_length = 0;
|
|
||||||
+ *ocsp_length = 0;
|
|
||||||
+ *privkey = NULL;
|
|
||||||
+ return 0;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (st2.cert_type != GNUTLS_CRT_X509) {
|
|
||||||
gnutls_assert();
|
|
||||||
ret = GNUTLS_E_INVALID_REQUEST;
|
|
||||||
@@ -503,7 +510,10 @@ void gnutls_certificate_set_retrieve_function
|
|
||||||
gnutls_certificate_retrieve_function * func)
|
|
||||||
{
|
|
||||||
cred->legacy_cert_cb1 = func;
|
|
||||||
- cred->get_cert_callback3 = call_legacy_cert_cb1;
|
|
||||||
+ if (!func)
|
|
||||||
+ cred->get_cert_callback3 = NULL;
|
|
||||||
+ else
|
|
||||||
+ cred->get_cert_callback3 = call_legacy_cert_cb1;
|
|
||||||
}
|
|
||||||
|
|
||||||
static int call_legacy_cert_cb2(gnutls_session_t session,
|
|
||||||
@@ -578,7 +588,10 @@ void gnutls_certificate_set_retrieve_function2
|
|
||||||
gnutls_certificate_retrieve_function2 * func)
|
|
||||||
{
|
|
||||||
cred->legacy_cert_cb2 = func;
|
|
||||||
- cred->get_cert_callback3 = call_legacy_cert_cb2;
|
|
||||||
+ if (!func)
|
|
||||||
+ cred->get_cert_callback3 = NULL;
|
|
||||||
+ else
|
|
||||||
+ cred->get_cert_callback3 = call_legacy_cert_cb2;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
diff --git a/lib/hello_ext.c b/lib/hello_ext.c
|
|
||||||
index a3027130a..f72afe77f 100644
|
|
||||||
--- a/lib/hello_ext.c
|
|
||||||
+++ b/lib/hello_ext.c
|
|
||||||
@@ -208,7 +208,7 @@ int hello_ext_parse(void *_ctx, unsigned tls_id, const uint8_t *data, unsigned d
|
|
||||||
|
|
||||||
if (tls_id == PRE_SHARED_KEY_TLS_ID) {
|
|
||||||
ctx->seen_pre_shared_key = 1;
|
|
||||||
- } else if (ctx->seen_pre_shared_key) {
|
|
||||||
+ } else if (ctx->seen_pre_shared_key && session->security_parameters.entity == GNUTLS_SERVER) {
|
|
||||||
/* the pre-shared key extension must always be the last one,
|
|
||||||
* draft-ietf-tls-tls13-28: 4.2.11 */
|
|
||||||
return gnutls_assert_val(GNUTLS_E_RECEIVED_ILLEGAL_PARAMETER);
|
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:ed642b66a4ecf4851ab2d809cd1475c297b6201d8e8bd14b4d1c08b53ffca993
|
|
||||||
size 8010284
|
|
Binary file not shown.
3
gnutls-3.6.4.tar.xz
Normal file
3
gnutls-3.6.4.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:c663a792fbc84349c27c36059181f2ca86c9442e75ee8b0ad72f5f9b35deab3a
|
||||||
|
size 8076364
|
BIN
gnutls-3.6.4.tar.xz.sig
Normal file
BIN
gnutls-3.6.4.tar.xz.sig
Normal file
Binary file not shown.
@ -1,3 +1,39 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Oct 15 15:41:42 UTC 2018 - Vítězslav Čížek <vcizek@suse.com>
|
||||||
|
|
||||||
|
- Temporarily disable failing psk-file test (race condition)
|
||||||
|
* add disable-psk-file-test.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Oct 15 08:26:48 UTC 2018 - Tomáš Chvátal <tchvatal@suse.com>
|
||||||
|
|
||||||
|
- Version update to 3.6.4 (bsc#1111757):
|
||||||
|
** libgnutls: Added the final (RFC8446) version numbering of the TLS1.3 protocol.
|
||||||
|
** libgnutls: Corrected regression since 3.6.3 in the callbacks set with
|
||||||
|
gnutls_certificate_set_retrieve_function() which could not handle the case where
|
||||||
|
no certificates were returned, or the callbacks were set to NULL (see #528).
|
||||||
|
** libgnutls: gnutls_handshake() on server returns early on handshake when no
|
||||||
|
certificate is presented by client and the gnutls_init() flag GNUTLS_ENABLE_EARLY_START
|
||||||
|
is specified.
|
||||||
|
** libgnutls: Added session ticket key rotation on server side with TOTP.
|
||||||
|
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.
|
||||||
|
** libgnutls: The 'record size limit' extension is added and preferred to the
|
||||||
|
'max record size' extension when possible.
|
||||||
|
** libgnutls: Provide a more flexible PKCS#11 search of trust store certificates.
|
||||||
|
This addresses the problem where the CA certificate doesn't have a subject key
|
||||||
|
identifier whereas the end certificates have an authority key identifier (#569)
|
||||||
|
** libgnutls: gnutls_privkey_export_gost_raw2(), gnutls_privkey_import_gost_raw(),
|
||||||
|
gnutls_pubkey_export_gost_raw2(), gnutls_pubkey_import_gost_raw() import
|
||||||
|
and export GOST parameters in the "native" little endian format used for these
|
||||||
|
curves. This is an intentional incompatible change with 3.6.3.
|
||||||
|
** libgnutls: Added support for seperately negotiating client and server certificate types
|
||||||
|
as defined in RFC7250. This mechanism must be explicitly enabled via the
|
||||||
|
GNUTLS_ENABLE_CERT_TYPE_NEG flag in gnutls_init().
|
||||||
|
- Drop upstreamed patch:
|
||||||
|
* gnutls-3.6.3-backport-upstream-fixes.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Sep 18 08:39:56 UTC 2018 - schwab@suse.de
|
Tue Sep 18 08:39:56 UTC 2018 - schwab@suse.de
|
||||||
|
|
||||||
|
12
gnutls.spec
12
gnutls.spec
@ -12,7 +12,7 @@
|
|||||||
# license that conforms to the Open Source Definition (Version 1.9)
|
# license that conforms to the Open Source Definition (Version 1.9)
|
||||||
# published by the Open Source Initiative.
|
# published by the Open Source Initiative.
|
||||||
|
|
||||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
@ -20,8 +20,8 @@
|
|||||||
%define gnutlsxx_sover 28
|
%define gnutlsxx_sover 28
|
||||||
%define gnutls_dane_sover 0
|
%define gnutls_dane_sover 0
|
||||||
|
|
||||||
# unbound isn't in SLE (bsc#1086428)
|
# unbound isn't in SLE12 (bsc#1086428)
|
||||||
%if 0%{?is_opensuse}
|
%if 0%{?is_opensuse} || 0%{?suse_version} >= 1500
|
||||||
%bcond_without dane
|
%bcond_without dane
|
||||||
%else
|
%else
|
||||||
%bcond_with dane
|
%bcond_with dane
|
||||||
@ -29,7 +29,7 @@
|
|||||||
%bcond_with tpm
|
%bcond_with tpm
|
||||||
%bcond_without guile
|
%bcond_without guile
|
||||||
Name: gnutls
|
Name: gnutls
|
||||||
Version: 3.6.3
|
Version: 3.6.4
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: The GNU Transport Layer Security Library
|
Summary: The GNU Transport Layer Security Library
|
||||||
License: LGPL-2.1-or-later AND GPL-3.0-or-later
|
License: LGPL-2.1-or-later AND GPL-3.0-or-later
|
||||||
@ -41,7 +41,7 @@ Source2: %{name}.keyring
|
|||||||
Source3: baselibs.conf
|
Source3: baselibs.conf
|
||||||
Patch1: gnutls-3.5.11-skip-trust-store-tests.patch
|
Patch1: gnutls-3.5.11-skip-trust-store-tests.patch
|
||||||
Patch2: gnutls-3.6.0-disable-flaky-dtls_resume-test.patch
|
Patch2: gnutls-3.6.0-disable-flaky-dtls_resume-test.patch
|
||||||
Patch3: gnutls-3.6.3-backport-upstream-fixes.patch
|
Patch3: disable-psk-file-test.patch
|
||||||
BuildRequires: autogen
|
BuildRequires: autogen
|
||||||
BuildRequires: automake
|
BuildRequires: automake
|
||||||
BuildRequires: datefudge
|
BuildRequires: datefudge
|
||||||
@ -160,11 +160,11 @@ GnuTLS Wrappers for GNU Guile, a dialect of Scheme.
|
|||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
%patch1 -p1
|
%patch1 -p1
|
||||||
|
%patch3 -p1
|
||||||
# dtls-resume test fails on PPC
|
# dtls-resume test fails on PPC
|
||||||
%ifarch ppc64 ppc64le ppc
|
%ifarch ppc64 ppc64le ppc
|
||||||
%patch2 -p1
|
%patch2 -p1
|
||||||
%endif
|
%endif
|
||||||
%patch3 -p1
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
export LDFLAGS="-pie"
|
export LDFLAGS="-pie"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user