[Webkit-unassigned] [Bug 182906] New: ICE Gathering never completes due to missing srflx candidate
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Sat Feb 17 15:15:32 PST 2018
https://bugs.webkit.org/show_bug.cgi?id=182906
Bug ID: 182906
Summary: ICE Gathering never completes due to missing srflx
candidate
Product: WebKit
Version: Safari 11
Hardware: Macintosh
OS: macOS 10.13
Status: NEW
Severity: Normal
Priority: P2
Component: WebRTC
Assignee: webkit-unassigned at lists.webkit.org
Reporter: thomasmullendesign at gmail.com
CC: youennf at gmail.com
Safari 11 is intermittently waiting for a srflx candidate that never comes. Because of this, the null candidate never comes and ice gathering never completes. Although you can connect if you trickle ice and don't worry about the lack of ice completion, disabling trickle is broken.
Normal operation (on my network), gives me two candidates:
```
candidate:2222700650 1 udp 2113937151 192.168.1.105 50465 typ host generation 0 ufrag Cn1a network-cost 50
candidate:842163049 1 udp 1677729535 147.194.220.130 50465 typ srflx raddr 192.168.1.105 rport 50465 generation 0 ufrag Cn1a network-cost 50
```
However, around 1 in 10 times (by my estimate), Safari never delivers the second srflx candidate and just sits at gathering. The null candidate never arrives either.
I've tried it with a variety of STUN servers, networks and machines. This issue only occurs when using STUN.
Code to reproduce:
```
var config = {
"iceTransports": 'all',
"iceServers": [
{
"urls": "stun:stun.l.google.com:19302"
}
]
}
var pc = new RTCPeerConnection(config)
pc.createDataChannel('test')
pc.createOffer().then(offer => {
pc.setLocalDescription(offer)
})
pc.onicecandidate = (event) => {
console.log(testId, event.candidate)
}
```
Here is a JS fiddle demonstrating how it breaks connection attempts without ice trickle (it will repeat the test multiple times and eventually stall after ~10 runs). Chrome and Firefox run this fiddle perfectly fine (they never stall on gathering).
http://jsfiddle.net/hvkn8b5e/6/
Disabling ice candidate restrictions, requesting media capture access, http/https, and restarting Safari have no effect.
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20180217/8e2d2783/attachment.html>
More information about the webkit-unassigned
mailing list