updated to 3.5.4

This commit is contained in:
Nikos Mavrogiannopoulos 2016-09-08 09:04:29 +02:00
parent 1e9e689dc0
commit ee80365a36
5 changed files with 11 additions and 71 deletions

1
.gitignore vendored
View File

@ -66,3 +66,4 @@ gnutls-2.10.1-nosrp.tar.bz2
/gnutls-3.5.1-hobbled.tar.xz /gnutls-3.5.1-hobbled.tar.xz
/gnutls-3.5.2-hobbled.tar.xz /gnutls-3.5.2-hobbled.tar.xz
/gnutls-3.5.3-hobbled.tar.xz /gnutls-3.5.3-hobbled.tar.xz
/gnutls-3.5.4-hobbled.tar.xz

View File

@ -1,48 +0,0 @@
From 3ca24f24d9322256bc4c6d3bd237f8b98f073030 Mon Sep 17 00:00:00 2001
From: Nikos Mavrogiannopoulos <nmav@redhat.com>
Date: Mon, 29 Aug 2016 13:02:54 +0200
Subject: [PATCH] dtls: ensure that the DTLS window doesn't get stalled
That is ensure that it is forwarded at least one place if more than 16
packets have been received since the first one.
---
lib/dtls-sw.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/lib/dtls-sw.c b/lib/dtls-sw.c
index 616bd5a..8c334c0 100644
--- a/lib/dtls-sw.c
+++ b/lib/dtls-sw.c
@@ -51,7 +51,15 @@
#define DTLS_WINDOW_MARK(W, S) ((W)->dtls_sw_bits |= ((uint64_t) 1 << DTLS_WINDOW_OFFSET(W, S)))
-#define DTLS_WINDOW_UPDATE(W) while ((W)->dtls_sw_bits & (uint64_t) 1) { \
+/* We forcefully advance the window once we have received more than
+ * 8 packets since the first one. That way we ensure that we don't
+ * get stuck on connections with many lost packets. */
+#define DTLS_WINDOW_UPDATE(W) \
+ if (((W)->dtls_sw_bits & 0xffffffffffff0000LL) != 0) { \
+ (W)->dtls_sw_bits = (W)->dtls_sw_bits >> 1; \
+ (W)->dtls_sw_start++; \
+ } \
+ while ((W)->dtls_sw_bits & (uint64_t) 1) { \
(W)->dtls_sw_bits = (W)->dtls_sw_bits >> 1; \
(W)->dtls_sw_start++; \
}
--
libgit2 0.24.0
diff --git a/tests/mini-dtls-record.c b/tests/mini-dtls-record.c
index 1b5a055..8d32d8f 100644
--- a/tests/mini-dtls-record.c
+++ b/tests/mini-dtls-record.c
@@ -163,7 +163,7 @@ static ssize_t n_push(gnutls_transport_ptr_t tr, const void *data, size_t len)
/* The first five messages are handshake. Thus corresponds to msg_seq+5 */
static int recv_msg_seq[] =
- { 1, 2, 3, 4, 5, 6, 12, 28, 7, 8, 9, 10, 11, 13, 15, 16, 14, 18, 20,
+ { 1, 2, 3, 4, 5, 6, 12, 28, 8, 9, 10, 11, 13, 15, 16, 14, 18, 20,
19, 21, 22, 23, 25, 24, 26, 27, 29, 30, 31, 33, 32, 34, 35, 38, 36, 37,
-1
};

View File

@ -1,12 +0,0 @@
diff -up gnutls-3.5.3/tests/srp.c.noecc gnutls-3.5.3/tests/srp.c
--- gnutls-3.5.3/tests/srp.c.noecc 2013-03-21 21:42:28.000000000 +0100
+++ gnutls-3.5.3/tests/srp.c 2013-03-25 13:42:20.753422209 +0100
@@ -27,7 +27,7 @@
#include <stdio.h>
#include <stdlib.h>
-#if defined(_WIN32)
+#if defined(_WIN32) || !defined(ENABLE_SRP)
int main()
{

View File

@ -2,8 +2,8 @@
%bcond_without guile %bcond_without guile
Summary: A TLS protocol implementation Summary: A TLS protocol implementation
Name: gnutls Name: gnutls
Version: 3.5.3 Version: 3.5.4
Release: 2%{?dist} Release: 1%{?dist}
# The libraries are LGPLv2.1+, utilities are GPLv3+ # The libraries are LGPLv2.1+, utilities are GPLv3+
License: GPLv3+ and LGPLv2+ License: GPLv3+ and LGPLv2+
Group: System Environment/Libraries Group: System Environment/Libraries
@ -34,10 +34,8 @@ Source0: %{name}-%{version}-hobbled.tar.xz
Source1: libgnutls-config Source1: libgnutls-config
Source2: hobble-gnutls Source2: hobble-gnutls
Patch1: gnutls-3.2.7-rpath.patch Patch1: gnutls-3.2.7-rpath.patch
Patch3: gnutls-3.5.3-nosrp.patch Patch2: gnutls-3.5.1-default-policy.patch
Patch4: gnutls-3.5.1-default-policy.patch Patch3: gnutls-3.4.2-no-now-guile.patch
Patch5: gnutls-3.4.2-no-now-guile.patch
Patch6: gnutls-3.5.3-dtls-fix.patch
# Wildcard bundling exception https://fedorahosted.org/fpc/ticket/174 # Wildcard bundling exception https://fedorahosted.org/fpc/ticket/174
Provides: bundled(gnulib) = 20130424 Provides: bundled(gnulib) = 20130424
@ -138,10 +136,8 @@ This package contains Guile bindings for the library.
%setup -q %setup -q
%patch1 -p1 -b .rpath %patch1 -p1 -b .rpath
%patch3 -p1 -b .nosrp %patch2 -p1 -b .default-policy
%patch4 -p1 -b .default-policy %patch3 -p1 -b .guile
%patch5 -p1 -b .guile
%patch6 -p1 -b .dtls-fix
sed 's/gnutls_srp.c//g' -i lib/Makefile.in sed 's/gnutls_srp.c//g' -i lib/Makefile.in
sed 's/gnutls_srp.lo//g' -i lib/Makefile.in sed 's/gnutls_srp.lo//g' -i lib/Makefile.in
@ -280,6 +276,9 @@ fi
%endif %endif
%changelog %changelog
* Thu Sep 8 2016 Nikos Mavrogiannopoulos <nmav@redhat.com> 3.5.4-1
- New upstream release
* Mon Aug 29 2016 Nikos Mavrogiannopoulos <nmav@redhat.com> 3.5.3-2 * Mon Aug 29 2016 Nikos Mavrogiannopoulos <nmav@redhat.com> 3.5.3-2
- Work around #1371082 for x86 - Work around #1371082 for x86
- Fixed issue with DTLS sliding window implementation (#1370881) - Fixed issue with DTLS sliding window implementation (#1370881)

View File

@ -1 +1 @@
7096660a19e1e71b7be42052fb02597b gnutls-3.5.3-hobbled.tar.xz 67a80522339b5dd4d54eab62d971174e gnutls-3.5.4-hobbled.tar.xz