More updates from git
This commit is contained in:
parent
f33dcda578
commit
24424c5121
@ -1,3 +1,35 @@
|
||||
commit 30a0c230ae9b70c572060ad3037f68e102e4759a
|
||||
Author: Olivier Crête <olivier.crete@collabora.com>
|
||||
Date: Mon Jun 6 18:31:22 2016 -0400
|
||||
|
||||
conncheck: Remove pairs before freeing candidate
|
||||
|
||||
Remove the whole pair before the candidate is
|
||||
to be freed.
|
||||
|
||||
https://phabricator.freedesktop.org/T7460
|
||||
|
||||
commit 71f7ed3eda829c3dc6afe9ed013c0ab826a1aa40
|
||||
Author: Olivier Crête <olivier.crete@collabora.com>
|
||||
Date: Fri Feb 19 15:01:03 2016 -0500
|
||||
|
||||
stun timer: Do 7 retransmissions as recommended
|
||||
|
||||
Also reduce the normal timeout to make the test bearable.
|
||||
|
||||
This is what RFC 5389 section 7.2.1
|
||||
|
||||
Differential Revision: https://phabricator.freedesktop.org/D1056
|
||||
Maniphest Task: https://phabricator.freedesktop.org/T3339
|
||||
|
||||
commit dc1e1b7a1b258fb54ba582d2fe77ccd159c9fe88
|
||||
Author: Olivier Crête <olivier.crete@collabora.com>
|
||||
Date: Mon Jun 6 16:21:54 2016 -0400
|
||||
|
||||
timer: Maximum retransmission should include the original one
|
||||
|
||||
We really care about the maximum transmissions, the first one counts.
|
||||
|
||||
commit fad72879fa4a0896c55ac6fc5f77f6c05e369a2b
|
||||
Author: Olivier Crête <olivier.crete@collabora.com>
|
||||
Date: Fri Jun 3 18:42:59 2016 -0400
|
||||
@ -4669,7 +4701,7 @@ index 7ded710..6712794 100644
|
||||
|
||||
TurnServer *
|
||||
diff --git a/agent/conncheck.c b/agent/conncheck.c
|
||||
index 057fc81..5cba478 100644
|
||||
index 057fc81..7e03985 100644
|
||||
--- a/agent/conncheck.c
|
||||
+++ b/agent/conncheck.c
|
||||
@@ -61,18 +61,20 @@
|
||||
@ -6310,8 +6342,14 @@ index 057fc81..5cba478 100644
|
||||
NiceSocket *sock)
|
||||
{
|
||||
GSList *l;
|
||||
@@ -3379,7 +3675,8 @@ conn_check_prune_socket (NiceAgent *agent, Stream *stream, Component *component,
|
||||
@@ -3375,14 +3671,20 @@ conn_check_prune_socket (NiceAgent *agent, Stream *stream, Component *component,
|
||||
}
|
||||
|
||||
/* Prune from the candidate check pairs. */
|
||||
- for (l = stream->conncheck_list; l != NULL; l = l->next) {
|
||||
+ for (l = stream->conncheck_list; l != NULL;) {
|
||||
CandidateCheckPair *p = l->data;
|
||||
+ GSList *next = l->next;
|
||||
|
||||
if ((p->local != NULL && p->local->sockptr == sock) ||
|
||||
- (p->remote != NULL && p->remote->sockptr == sock)) {
|
||||
@ -6320,6 +6358,13 @@ index 057fc81..5cba478 100644
|
||||
nice_debug ("Agent %p : Retransmissions failed, giving up on "
|
||||
"connectivity check %p", agent, p);
|
||||
candidate_check_pair_fail (stream, agent, p);
|
||||
+ conn_check_free_item (p);
|
||||
+ stream->conncheck_list = g_slist_delete_link (stream->conncheck_list, l);
|
||||
}
|
||||
+
|
||||
+ l = next;
|
||||
}
|
||||
}
|
||||
diff --git a/agent/conncheck.h b/agent/conncheck.h
|
||||
index e6c2c62..431c606 100644
|
||||
--- a/agent/conncheck.h
|
||||
@ -9044,6 +9089,19 @@ index 9faa64b..558fe5e 100644
|
||||
return STUN_MESSAGE_BUFFER_INVALID; // RTP or other non-STUN packet
|
||||
}
|
||||
|
||||
diff --git a/stun/tests/test-bind.c b/stun/tests/test-bind.c
|
||||
index 0c7646f..2cf4feb 100644
|
||||
--- a/stun/tests/test-bind.c
|
||||
+++ b/stun/tests/test-bind.c
|
||||
@@ -438,7 +438,7 @@ static void keepalive (void)
|
||||
|
||||
static void test (void (*func) (void), const char *name)
|
||||
{
|
||||
- alarm (20);
|
||||
+ alarm (30);
|
||||
|
||||
printf ("%s test... ", name);
|
||||
func ();
|
||||
diff --git a/stun/tests/test-conncheck.c b/stun/tests/test-conncheck.c
|
||||
index 610d43a..92b947c 100644
|
||||
--- a/stun/tests/test-conncheck.c
|
||||
@ -9184,6 +9242,44 @@ index a628791..a7d0d19 100644
|
||||
}
|
||||
|
||||
if (stun_agent_init_response (agent, msg, buf, len, req) == FALSE) {
|
||||
diff --git a/stun/usages/timer.c b/stun/usages/timer.c
|
||||
index 82f3ea2..2862ab8 100644
|
||||
--- a/stun/usages/timer.c
|
||||
+++ b/stun/usages/timer.c
|
||||
@@ -104,7 +104,7 @@ void stun_timer_start (StunTimer *timer, unsigned int initial_timeout,
|
||||
unsigned int max_retransmissions)
|
||||
{
|
||||
stun_gettime (&timer->deadline);
|
||||
- timer->retransmissions = 0;
|
||||
+ timer->retransmissions = 1;
|
||||
timer->delay = initial_timeout;
|
||||
timer->max_retransmissions = max_retransmissions;
|
||||
add_delay (&timer->deadline, timer->delay);
|
||||
diff --git a/stun/usages/timer.h b/stun/usages/timer.h
|
||||
index e6501cb..e74353b 100644
|
||||
--- a/stun/usages/timer.h
|
||||
+++ b/stun/usages/timer.h
|
||||
@@ -130,15 +130,18 @@ struct stun_timer_s {
|
||||
* STUN_TIMER_DEFAULT_TIMEOUT:
|
||||
*
|
||||
* The default intial timeout to use for the timer
|
||||
+ * RFC recommendds 500, but it's ridiculous, 50ms is known to work in most
|
||||
+ * cases as it is also what is used by SIP style VoIP when sending A-Law and
|
||||
+ * mu-Law audio, so 200ms should be hyper safe.
|
||||
*/
|
||||
-#define STUN_TIMER_DEFAULT_TIMEOUT 600
|
||||
+#define STUN_TIMER_DEFAULT_TIMEOUT 200
|
||||
|
||||
/**
|
||||
* STUN_TIMER_DEFAULT_MAX_RETRANSMISSIONS:
|
||||
*
|
||||
* The default maximum retransmissions allowed before a timer decides to timeout
|
||||
*/
|
||||
-#define STUN_TIMER_DEFAULT_MAX_RETRANSMISSIONS 3
|
||||
+#define STUN_TIMER_DEFAULT_MAX_RETRANSMISSIONS 7
|
||||
|
||||
/**
|
||||
* STUN_TIMER_DEFAULT_RELIABLE_TIMEOUT:
|
||||
diff --git a/stun/usages/turn.c b/stun/usages/turn.c
|
||||
index f242650..3b94959 100644
|
||||
--- a/stun/usages/turn.c
|
@ -1,13 +1,13 @@
|
||||
Name: libnice
|
||||
Version: 0.1.13
|
||||
Release: 5%{?dist}
|
||||
Release: 6%{?dist}
|
||||
Summary: GLib ICE implementation
|
||||
|
||||
Group: System Environment/Libraries
|
||||
License: LGPLv2 and MPLv1.1
|
||||
URL: http://nice.freedesktop.org/wiki/
|
||||
Source0: http://nice.freedesktop.org/releases/%{name}-%{version}.tar.gz
|
||||
Patch1: libnice-0.1.13-20160606.patch
|
||||
Patch1: libnice-0.1.13-20160610.patch
|
||||
|
||||
BuildRequires: glib2-devel
|
||||
BuildRequires: gobject-introspection-devel
|
||||
@ -124,6 +124,9 @@ find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
|
||||
|
||||
|
||||
%changelog
|
||||
* Fri Jun 10 2016 David Woodhouse <dwmw2@infradead.org> - 0.1.13-6
|
||||
- More updates from libnice git; use-after-free fixes
|
||||
|
||||
* Mon Jun 06 2016 David Woodhouse <dwmw2@infradead.org> - 0.1.13-5
|
||||
- Wholesale update to git HEAD, which fixes SIPE again.
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user