summaryrefslogtreecommitdiff
path: root/third-party/pjproject
diff options
context:
space:
mode:
authorMatt Jordan <mjordan@digium.com>2016-11-14 15:57:08 -0600
committerMatt Jordan <mjordan@digium.com>2016-11-14 17:02:17 -0500
commit0790aa528a902b49de9aff8232ff4c7a97ea6fda (patch)
treecbcabd2a59170979869c1799e1ac0df89c559f36 /third-party/pjproject
parenta58d3597019f8cc5a503f140671232ae3f8d9119 (diff)
pjproject: Use a much higher limit for PJ_ICE_MAX_CHECKS
The PJ_ICE_MAX_CHECKS constant is used by pjproject to determine how many pairs of local/remote candidates will be made. If for some reason we reach this upper bound, ICE will generally fail and no media will flow between the browser and Asterisk. This patch makes PJ_ICE_MAX_CHECKS set to the total possible number of pairs of candidates we'd theoretically allow, which is PJ_ICE_MAX_CAND^2. Prior to this patch, we simply multiplied PJ_ICE_MAX_CAND by two; on systems with multiple interfaces (I blame Docker), this is far too low to allow WebRTC calls to succeed. Setting this to be PJ_ICE_MAX_CAND^2 allowed WebRTC calls to succeed even when the system Asterisk was running on had quite a few virtual interfaces. Change-Id: Icd4f17de0ac9d3a83dddfc8bf1cb7616bc107d55
Diffstat (limited to 'third-party/pjproject')
-rw-r--r--third-party/pjproject/patches/config_site.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/third-party/pjproject/patches/config_site.h b/third-party/pjproject/patches/config_site.h
index 564959d84..1a48695bf 100644
--- a/third-party/pjproject/patches/config_site.h
+++ b/third-party/pjproject/patches/config_site.h
@@ -56,7 +56,7 @@
/* Defaults too low for WebRTC */
#define PJ_ICE_MAX_CAND 32
-#define PJ_ICE_MAX_CHECKS (PJ_ICE_MAX_CAND * 2)
+#define PJ_ICE_MAX_CHECKS (PJ_ICE_MAX_CAND * PJ_ICE_MAX_CAND)
/* Increase limits to allow more formats */
#define PJMEDIA_MAX_SDP_FMT 64