summaryrefslogtreecommitdiffstats
path: root/dom/wifi/nsIWifi.idl
blob: 82ab9a75bd2d529c77bb4137e5ef5b9d44571c10 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
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);
};