Does anyone know exactly what behaviour is expected with Safari 11 and WebRTC ice candidates?
- Browse to that site
- I see my public IP address
- Grant audio/video permissions
- I see some local IPs and my IPv6 address
This is slightly strange behaviour in itself. Why do I see my public IPv4 address without permissions?
Now if I check under Develop->WebRTC->Enable Legacy API I see this option is checked. Since Safari 11 claims to be WebRTC compliant and they also claim that API is deprecated then I tried disabling it. However, once disabled, if I refresh the page I see no IPs (permissions or not).
If I close the browser and reopen then Enable Legacy API has been set again!
What on earth is going on? It's as if they're saying, actually we didn't finish support for this so we're going to leave the legacy APIs there for now as a stop gap. But this contradicts their release notes.
One other thing to note is that you can also set Develop->WebRTC->Disable ICE Candidate Restrictions. This seems to remove the need for permissions in order to get ice candidates. I guess that would make sense as a developer option. Wonder if there's any other reason that it's there.
Note that I intend to file a bug with Apple, but I was hoping there'd be some expertise here readily available. My experience with Apple bug reports is at best a long wait, at worst no reply at all.