diff options
Diffstat (limited to 'dom/webidl/MozTetheringManager.webidl')
-rw-r--r-- | dom/webidl/MozTetheringManager.webidl | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/dom/webidl/MozTetheringManager.webidl b/dom/webidl/MozTetheringManager.webidl new file mode 100644 index 000000000..43d783734 --- /dev/null +++ b/dom/webidl/MozTetheringManager.webidl @@ -0,0 +1,57 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +enum TetheringType { + "bluetooth", + "usb", + "wifi" +}; + +enum SecurityType { + "open", + "wpa-psk", + "wpa2-psk" +}; + +dictionary WifiTetheringConfig { + DOMString ssid; + SecurityType security; + DOMString key; +}; + +dictionary TetheringConfiguration { + DOMString ip; + DOMString prefix; + DOMString startIp; + DOMString endIp; + DOMString dns1; + DOMString dns2; + WifiTetheringConfig wifiConfig; +}; + +[JSImplementation="@mozilla.org/tetheringmanager;1", + NavigatorProperty="mozTetheringManager", + ChromeOnly] +interface MozTetheringManager { + /** + * Enable/Disable tethering. + * @param enabled True to enable tethering, False to disable tethering. + * @param type Tethering type to enable/disable. + * @param config Configuration should have following fields when enable is True: + * - ip ip address. + * - prefix mask length. + * - startIp start ip address allocated by DHCP server for tethering. + * - endIp end ip address allocated by DHCP server for tethering. + * - dns1 first DNS server address. + * - dns2 second DNS server address. + * - wifiConfig wifi tethering configuration + * - ssid SSID network name. + * - security open, wpa-psk or wpa2-psk. + * - key password for wpa-psk or wpa2-psk. + * config should not be set when enabled is False. + */ + Promise<any> setTetheringEnabled(boolean enabled, + TetheringType type, + optional TetheringConfiguration config); +}; |