Hi,

Electron web-view is leaking original IP through webRTC even though we are in VPN/Proxy

Do we have option to disable that in electron, brave is already doing this
https://github.com/brave/browser-laptop/commit/653e4db649c1e96e55f5b2c80a60f5db49b10cb3#diff-b95013a7d2996f174fdafb3bb3cfd7cb

Third party Add-ons are blocking webrtc  by accessing this API
chrome.privacy.network.webRTCIPHandlingPolicy.set({value: 'default_public_interface_only'});

It will be helpful if  we  expose this API in electron too.

How to replicate this:
_________________________
create a simple webview
Set proxy for that session/webview
visit https://browserleaks.com/webrtc
You can see your original IP even though you are in proxy

Thanks
Jk


atom/browser/api/atom_api_web_contents.cc
v8::Isolate* isolate, content::WebContents* web_contents, Type type) {
  
  return mate::CreateHandle(isolate, new WebContents(isolate, web_contents,
        type));
}
mate::Handle<WebContents> WebContents::Create(
    v8::Isolate* isolate, const mate::Dictionary& options) {
  return mate::CreateHandle(isolate, new WebContents(isolate, options));
}
}  
}  
namespace {
using atom::api::WebContents;
void Initialize(v8::Local<v8::Object> exports, v8::Local<v8::Value> unused,
                v8::Local<v8::Context> context, void* priv) {
  v8::Isolate* isolate = context->GetIsolate();
  mate::Dictionary dict(isolate, exports);
  dict.Set("WebContents", WebContents::GetConstructor(isolate)->GetFunction());
  dict.SetMethod("create", &WebContents::Create);
  dict.SetMethod("fromId", &mate::TrackableObject<WebContents>::FromWeakMapID);
  dict.SetMethod("getAllWebContents",
                 &mate::TrackableObject<WebContents>::GetAll);
}
}  
NODE_MODULE_CONTEXT_AWARE_BUILTIN(atom_browser_web_contents, Initialize)