summaryrefslogtreecommitdiffstats
path: root/dom/wifi/nsIWifi.idl
diff options
context:
space:
mode:
Diffstat (limited to 'dom/wifi/nsIWifi.idl')
-rw-r--r--dom/wifi/nsIWifi.idl60
1 files changed, 60 insertions, 0 deletions
diff --git a/dom/wifi/nsIWifi.idl b/dom/wifi/nsIWifi.idl
new file mode 100644
index 000000000..82ab9a75b
--- /dev/null
+++ b/dom/wifi/nsIWifi.idl
@@ -0,0 +1,60 @@
+/* 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);
+};