summaryrefslogtreecommitdiff
path: root/third-party/pjproject/patches/0010-r5665-svn-backport-ICE-Use-STUN-FINGERPRINT-attribut.patch
diff options
context:
space:
mode:
Diffstat (limited to 'third-party/pjproject/patches/0010-r5665-svn-backport-ICE-Use-STUN-FINGERPRINT-attribut.patch')
-rw-r--r--third-party/pjproject/patches/0010-r5665-svn-backport-ICE-Use-STUN-FINGERPRINT-attribut.patch41
1 files changed, 41 insertions, 0 deletions
diff --git a/third-party/pjproject/patches/0010-r5665-svn-backport-ICE-Use-STUN-FINGERPRINT-attribut.patch b/third-party/pjproject/patches/0010-r5665-svn-backport-ICE-Use-STUN-FINGERPRINT-attribut.patch
new file mode 100644
index 000000000..3c83cc502
--- /dev/null
+++ b/third-party/pjproject/patches/0010-r5665-svn-backport-ICE-Use-STUN-FINGERPRINT-attribut.patch
@@ -0,0 +1,41 @@
+From 06bc834969a34d2c60e05beed3051b4a6d34c125 Mon Sep 17 00:00:00 2001
+From: Richard Mudgett <rmudgett@digium.com>
+Date: Thu, 28 Sep 2017 10:57:23 -0500
+Subject: [PATCH 3/3] r5665 svn backport ICE: Use STUN FINGERPRINT attribute
+ when sending keepalives
+
+Fixed #2046: ICE: Use STUN FINGERPRINT attribute when sending keepalives
+
+Per RFC 5245 Section 10:
+
+ If STUN is being used for keepalives, a STUN Binding Indication is
+ used [RFC5389]. The Indication MUST NOT utilize any authentication
+ mechanism. It SHOULD contain the FINGERPRINT attribute to aid in
+ demultiplexing, but SHOULD NOT contain any other attributes.
+---
+ pjnath/src/pjnath/ice_session.c | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/pjnath/src/pjnath/ice_session.c b/pjnath/src/pjnath/ice_session.c
+index 27a2950..63a0d1c 100644
+--- a/pjnath/src/pjnath/ice_session.c
++++ b/pjnath/src/pjnath/ice_session.c
+@@ -1217,10 +1217,12 @@ static void ice_keep_alive(pj_ice_sess *ice, pj_bool_t send_now)
+ msg_data = PJ_POOL_ZALLOC_T(tdata->pool, pj_ice_msg_data);
+ msg_data->transport_id = the_check->lcand->transport_id;
+
+- /* Temporarily disable FINGERPRINT. The Binding Indication
+- * SHOULD NOT contain any attributes.
++ /* RFC 5245 Section 10:
++ * The Binding Indication SHOULD contain the FINGERPRINT attribute
++ * to aid in demultiplexing, but SHOULD NOT contain any other
++ * attributes.
+ */
+- saved = pj_stun_session_use_fingerprint(comp->stun_sess, PJ_FALSE);
++ saved = pj_stun_session_use_fingerprint(comp->stun_sess, PJ_TRUE);
+
+ /* Send to session */
+ addr_len = pj_sockaddr_get_len(&the_check->rcand->addr);
+--
+2.7.4
+