/* 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/. */ #include "nsISupports.idl" #include "nsIDOMDOMRequest.idl" #include "nsIDOMEvent.idl" interface nsIVariant; [scriptable, uuid(cf1ac02b-1f39-446e-815b-651ac78d2233)] interface nsIWifiScanResult : nsISupports { readonly attribute DOMString ssid; readonly attribute DOMString bssid; const int32_t WPA_PSK = 0x01; const int32_t WPA_EAP = 0x02; const int32_t WEP = 0x04; readonly attribute uint32_t capabilities; /** * Strength of the signal to network. */ readonly attribute uint32_t signalStrength; readonly attribute uint32_t relSignalStrength; readonly attribute boolean connected; }; [scriptable, uuid(a6931ebf-8493-4014-90e2-99f406999982)] interface nsIWifiScanResultsReady : nsISupports { /** * Callback with list of networks. */ void onready(in uint32_t count, [array, size_is(count)] in nsIWifiScanResult results); /** * Callback if scanning for networks failed after 3 retry attempts. */ void onfailure(); }; [scriptable, uuid(08dfefed-5c5d-4468-8c5d-2c65c24692d9)] interface nsIWifi : nsISupports { /** * Shutdown the wifi system. */ void shutdown(); /** * Returns the list of currently available networks as well as the list of * currently configured networks. * * On success a callback is notified with the list of networks. * On failure after 3 scan retry attempts a callback is notified of failure. */ void getWifiScanResults(in nsIWifiScanResultsReady callback); };