blob: 3c83cc502229e5c727a3fe4712f0c96d5e971735 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
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
|