wpa_supplicant(interface): Add iface/network type
Add separate types of Iface/Network object for STA (station mode) and P2P mode ifaces and associated networks. These expose very different functionality and exposing 2 different types of objects makes the interface cleaner. Although, they're still represented via the same struct for both types in the wpa_supplicant core. Bug: 32553421 Test: ./hardware/interfaces/update-makefiles.sh Change-Id: I41601a650709429c65014cb7adaf6cb9ab03787e
This commit is contained in:
parent
8766c010ba
commit
39f588f8ed
13 changed files with 1439 additions and 870 deletions
|
@ -9,18 +9,30 @@ genrule {
|
|||
"ISupplicant.hal",
|
||||
"ISupplicantCallback.hal",
|
||||
"ISupplicantIface.hal",
|
||||
"ISupplicantIfaceCallback.hal",
|
||||
"ISupplicantNetwork.hal",
|
||||
"ISupplicantNetworkCallback.hal",
|
||||
"ISupplicantP2pIface.hal",
|
||||
"ISupplicantP2pIfaceCallback.hal",
|
||||
"ISupplicantP2pNetwork.hal",
|
||||
"ISupplicantP2pNetworkCallback.hal",
|
||||
"ISupplicantStaIface.hal",
|
||||
"ISupplicantStaIfaceCallback.hal",
|
||||
"ISupplicantStaNetwork.hal",
|
||||
"ISupplicantStaNetworkCallback.hal",
|
||||
],
|
||||
out: [
|
||||
"android/hardware/wifi/supplicant/1.0/types.cpp",
|
||||
"android/hardware/wifi/supplicant/1.0/SupplicantAll.cpp",
|
||||
"android/hardware/wifi/supplicant/1.0/SupplicantCallbackAll.cpp",
|
||||
"android/hardware/wifi/supplicant/1.0/SupplicantIfaceAll.cpp",
|
||||
"android/hardware/wifi/supplicant/1.0/SupplicantIfaceCallbackAll.cpp",
|
||||
"android/hardware/wifi/supplicant/1.0/SupplicantNetworkAll.cpp",
|
||||
"android/hardware/wifi/supplicant/1.0/SupplicantNetworkCallbackAll.cpp",
|
||||
"android/hardware/wifi/supplicant/1.0/SupplicantP2pIfaceAll.cpp",
|
||||
"android/hardware/wifi/supplicant/1.0/SupplicantP2pIfaceCallbackAll.cpp",
|
||||
"android/hardware/wifi/supplicant/1.0/SupplicantP2pNetworkAll.cpp",
|
||||
"android/hardware/wifi/supplicant/1.0/SupplicantP2pNetworkCallbackAll.cpp",
|
||||
"android/hardware/wifi/supplicant/1.0/SupplicantStaIfaceAll.cpp",
|
||||
"android/hardware/wifi/supplicant/1.0/SupplicantStaIfaceCallbackAll.cpp",
|
||||
"android/hardware/wifi/supplicant/1.0/SupplicantStaNetworkAll.cpp",
|
||||
"android/hardware/wifi/supplicant/1.0/SupplicantStaNetworkCallbackAll.cpp",
|
||||
],
|
||||
}
|
||||
|
||||
|
@ -33,9 +45,15 @@ genrule {
|
|||
"ISupplicant.hal",
|
||||
"ISupplicantCallback.hal",
|
||||
"ISupplicantIface.hal",
|
||||
"ISupplicantIfaceCallback.hal",
|
||||
"ISupplicantNetwork.hal",
|
||||
"ISupplicantNetworkCallback.hal",
|
||||
"ISupplicantP2pIface.hal",
|
||||
"ISupplicantP2pIfaceCallback.hal",
|
||||
"ISupplicantP2pNetwork.hal",
|
||||
"ISupplicantP2pNetworkCallback.hal",
|
||||
"ISupplicantStaIface.hal",
|
||||
"ISupplicantStaIfaceCallback.hal",
|
||||
"ISupplicantStaNetwork.hal",
|
||||
"ISupplicantStaNetworkCallback.hal",
|
||||
],
|
||||
out: [
|
||||
"android/hardware/wifi/supplicant/1.0/types.h",
|
||||
|
@ -54,21 +72,51 @@ genrule {
|
|||
"android/hardware/wifi/supplicant/1.0/BnSupplicantIface.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BpSupplicantIface.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BsSupplicantIface.h",
|
||||
"android/hardware/wifi/supplicant/1.0/ISupplicantIfaceCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/IHwSupplicantIfaceCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BnSupplicantIfaceCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BpSupplicantIfaceCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BsSupplicantIfaceCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/ISupplicantNetwork.h",
|
||||
"android/hardware/wifi/supplicant/1.0/IHwSupplicantNetwork.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BnSupplicantNetwork.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BpSupplicantNetwork.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BsSupplicantNetwork.h",
|
||||
"android/hardware/wifi/supplicant/1.0/ISupplicantNetworkCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/IHwSupplicantNetworkCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BnSupplicantNetworkCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BpSupplicantNetworkCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BsSupplicantNetworkCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/ISupplicantP2pIface.h",
|
||||
"android/hardware/wifi/supplicant/1.0/IHwSupplicantP2pIface.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BnSupplicantP2pIface.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BpSupplicantP2pIface.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BsSupplicantP2pIface.h",
|
||||
"android/hardware/wifi/supplicant/1.0/ISupplicantP2pIfaceCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/IHwSupplicantP2pIfaceCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BnSupplicantP2pIfaceCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BpSupplicantP2pIfaceCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BsSupplicantP2pIfaceCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/ISupplicantP2pNetwork.h",
|
||||
"android/hardware/wifi/supplicant/1.0/IHwSupplicantP2pNetwork.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BnSupplicantP2pNetwork.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BpSupplicantP2pNetwork.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BsSupplicantP2pNetwork.h",
|
||||
"android/hardware/wifi/supplicant/1.0/ISupplicantP2pNetworkCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/IHwSupplicantP2pNetworkCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BnSupplicantP2pNetworkCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BpSupplicantP2pNetworkCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BsSupplicantP2pNetworkCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/ISupplicantStaIface.h",
|
||||
"android/hardware/wifi/supplicant/1.0/IHwSupplicantStaIface.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BnSupplicantStaIface.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BpSupplicantStaIface.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BsSupplicantStaIface.h",
|
||||
"android/hardware/wifi/supplicant/1.0/ISupplicantStaIfaceCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/IHwSupplicantStaIfaceCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BnSupplicantStaIfaceCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BpSupplicantStaIfaceCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BsSupplicantStaIfaceCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/ISupplicantStaNetwork.h",
|
||||
"android/hardware/wifi/supplicant/1.0/IHwSupplicantStaNetwork.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BnSupplicantStaNetwork.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BpSupplicantStaNetwork.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BsSupplicantStaNetwork.h",
|
||||
"android/hardware/wifi/supplicant/1.0/ISupplicantStaNetworkCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/IHwSupplicantStaNetworkCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BnSupplicantStaNetworkCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BpSupplicantStaNetworkCallback.h",
|
||||
"android/hardware/wifi/supplicant/1.0/BsSupplicantStaNetworkCallback.h",
|
||||
],
|
||||
}
|
||||
|
||||
|
|
|
@ -12,6 +12,23 @@ intermediates := $(local-generated-sources-dir)
|
|||
|
||||
HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
|
||||
|
||||
#
|
||||
# Build types.hal (IfaceType)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/IfaceType.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::types.IfaceType
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (SupplicantStatus)
|
||||
#
|
||||
|
@ -93,8 +110,6 @@ GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantIface.ja
|
|||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantIface.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantIfaceCallback.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantIfaceCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantNetwork.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantNetwork.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
|
@ -109,25 +124,6 @@ $(GEN): $(LOCAL_PATH)/ISupplicantIface.hal
|
|||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantIfaceCallback.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantIfaceCallback.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantIfaceCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantIfaceCallback
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantIfaceCallback.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantNetwork.hal
|
||||
#
|
||||
|
@ -135,8 +131,6 @@ GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantNetwork.
|
|||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantNetwork.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantNetworkCallback.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantNetworkCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
|
@ -150,19 +144,166 @@ $(GEN): $(LOCAL_PATH)/ISupplicantNetwork.hal
|
|||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantNetworkCallback.hal
|
||||
# Build ISupplicantP2pIface.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantNetworkCallback.java
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantP2pIface.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantNetworkCallback.hal
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantP2pIface.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantIface.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantIface.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantP2pIfaceCallback.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantP2pIfaceCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantNetworkCallback
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantP2pIface
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantNetworkCallback.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantP2pIface.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantP2pIfaceCallback.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantP2pIfaceCallback.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantP2pIfaceCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantP2pIfaceCallback
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantP2pIfaceCallback.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantP2pNetwork.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantP2pNetwork.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantP2pNetwork.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantNetwork.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantNetwork.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantP2pNetworkCallback.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantP2pNetworkCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantP2pNetwork
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantP2pNetwork.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantP2pNetworkCallback.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantP2pNetworkCallback.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantP2pNetworkCallback.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantP2pNetworkCallback
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantP2pNetworkCallback.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantStaIface.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantStaIface.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantStaIface.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantIface.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantIface.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantStaIfaceCallback.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantStaIfaceCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantStaIface
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantStaIface.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantStaIfaceCallback.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantStaIfaceCallback.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantStaIfaceCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantStaIfaceCallback
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantStaIfaceCallback.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantStaNetwork.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantStaNetwork.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantStaNetwork.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantNetwork.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantNetwork.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantStaNetworkCallback.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantStaNetworkCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantStaNetwork
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantStaNetwork.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantStaNetworkCallback.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantStaNetworkCallback.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantStaNetworkCallback.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantStaNetworkCallback
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantStaNetworkCallback.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
include $(BUILD_JAVA_LIBRARY)
|
||||
|
@ -178,6 +319,23 @@ intermediates := $(local-generated-sources-dir)
|
|||
|
||||
HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
|
||||
|
||||
#
|
||||
# Build types.hal (IfaceType)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/IfaceType.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::types.IfaceType
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (SupplicantStatus)
|
||||
#
|
||||
|
@ -259,8 +417,6 @@ GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantIface.ja
|
|||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantIface.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantIfaceCallback.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantIfaceCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantNetwork.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantNetwork.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
|
@ -275,25 +431,6 @@ $(GEN): $(LOCAL_PATH)/ISupplicantIface.hal
|
|||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantIfaceCallback.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantIfaceCallback.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantIfaceCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantIfaceCallback
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantIfaceCallback.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantNetwork.hal
|
||||
#
|
||||
|
@ -301,8 +438,6 @@ GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantNetwork.
|
|||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantNetwork.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantNetworkCallback.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantNetworkCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
|
@ -316,19 +451,166 @@ $(GEN): $(LOCAL_PATH)/ISupplicantNetwork.hal
|
|||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantNetworkCallback.hal
|
||||
# Build ISupplicantP2pIface.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantNetworkCallback.java
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantP2pIface.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantNetworkCallback.hal
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantP2pIface.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantIface.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantIface.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantP2pIfaceCallback.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantP2pIfaceCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantNetworkCallback
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantP2pIface
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantNetworkCallback.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantP2pIface.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantP2pIfaceCallback.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantP2pIfaceCallback.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantP2pIfaceCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantP2pIfaceCallback
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantP2pIfaceCallback.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantP2pNetwork.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantP2pNetwork.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantP2pNetwork.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantNetwork.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantNetwork.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantP2pNetworkCallback.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantP2pNetworkCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantP2pNetwork
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantP2pNetwork.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantP2pNetworkCallback.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantP2pNetworkCallback.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantP2pNetworkCallback.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantP2pNetworkCallback
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantP2pNetworkCallback.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantStaIface.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantStaIface.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantStaIface.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantIface.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantIface.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantStaIfaceCallback.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantStaIfaceCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantStaIface
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantStaIface.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantStaIfaceCallback.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantStaIfaceCallback.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantStaIfaceCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantStaIfaceCallback
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantStaIfaceCallback.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantStaNetwork.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantStaNetwork.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantStaNetwork.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantNetwork.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantNetwork.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantStaNetworkCallback.hal
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantStaNetworkCallback.hal
|
||||
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantStaNetwork
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantStaNetwork.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build ISupplicantStaNetworkCallback.hal
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/ISupplicantStaNetworkCallback.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantStaNetworkCallback.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi.supplicant@1.0::ISupplicantStaNetworkCallback
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/ISupplicantStaNetworkCallback.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
include $(BUILD_STATIC_JAVA_LIBRARY)
|
||||
|
|
|
@ -16,7 +16,6 @@
|
|||
|
||||
package android.hardware.wifi.supplicant@1.0;
|
||||
|
||||
import ISupplicantIfaceCallback;
|
||||
import ISupplicantNetwork;
|
||||
|
||||
/**
|
||||
|
@ -35,6 +34,17 @@ interface ISupplicantIface {
|
|||
*/
|
||||
getName() generates (SupplicantStatus status, string name);
|
||||
|
||||
/**
|
||||
* Retrieves the type of the network interface.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
|
||||
* @return type Type of the network interface, e.g., STA.
|
||||
*/
|
||||
getType() generates (SupplicantStatus status, IfaceType type);
|
||||
|
||||
/**
|
||||
* Add a new network to the interface.
|
||||
*
|
||||
|
@ -100,114 +110,4 @@ interface ISupplicantIface {
|
|||
*/
|
||||
listNetworks()
|
||||
generates (SupplicantStatus status, vec<SupplicantNetworkId> networkIds);
|
||||
|
||||
/**
|
||||
* Register for callbacks from this interface.
|
||||
*
|
||||
* These callbacks are invoked for events that are specific to this interface.
|
||||
* Registration of multiple callback objects is supported. These objects must
|
||||
* be automatically deleted when the corresponding client process is dead or
|
||||
* if this interface is removed.
|
||||
*
|
||||
* @param callback An instance of the |ISupplicantIfaceCallback| HIDL
|
||||
* interface object.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
|
||||
*/
|
||||
registerCallback(ISupplicantIfaceCallback callback)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Reconnect to the currently active network, even if we are already
|
||||
* connected.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_DISABLED|
|
||||
*/
|
||||
reassociate() generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Reconnect to the currently active network, if we are currently
|
||||
* disconnected.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_DISABLED|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_NOT_DISCONNECTED|
|
||||
*/
|
||||
reconnect() generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Disconnect from the current active network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_DISABLED|
|
||||
*/
|
||||
disconnect() generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Turn on/off power save mode for the interface.
|
||||
*
|
||||
* @param enable Indicate if power save is to be turned on/off.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_DISABLED|
|
||||
*/
|
||||
setPowerSave(bool enable) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Initiate TDLS discover with the provided peer mac address.
|
||||
*
|
||||
* @param macAddress MAC address of the peer.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
|
||||
*/
|
||||
initiateTdlsDiscover(MacAddress macAddress)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Initiate TDLS setup with the provided peer mac address.
|
||||
*
|
||||
* @param macAddress MAC address of the peer.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
|
||||
*/
|
||||
initiateTdlsSetup(MacAddress macAddress)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Initiate TDLS teardown with the provided peer mac address.
|
||||
*
|
||||
* @param macAddress MAC address of the peer.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
|
||||
*/
|
||||
initiateTdlsTeardown(MacAddress macAddress)
|
||||
generates (SupplicantStatus status);
|
||||
};
|
||||
|
|
|
@ -16,8 +16,6 @@
|
|||
|
||||
package android.hardware.wifi.supplicant@1.0;
|
||||
|
||||
import ISupplicantNetworkCallback;
|
||||
|
||||
/**
|
||||
* Interface exposed by wpa_supplicant for each network configuration it
|
||||
* controls.
|
||||
|
@ -27,100 +25,6 @@ import ISupplicantNetworkCallback;
|
|||
* credentials, bssid, etc.
|
||||
*/
|
||||
interface ISupplicantNetwork {
|
||||
/**
|
||||
* Size limits for some of the params used in this interface.
|
||||
*/
|
||||
enum ParamSizeLimits : uint32_t {
|
||||
/** Max length of SSID param. */
|
||||
SSID_MAX_LEN_IN_BYTES = 32,
|
||||
|
||||
/** Min length of PSK passphrase param. */
|
||||
PSK_PASSPHRASE_MIN_LEN_IN_BYTES = 8,
|
||||
|
||||
/** Max length of PSK passphrase param. */
|
||||
PSK_PASSPHRASE_MAX_LEN_IN_BYTES = 63,
|
||||
|
||||
/** Max number of WEP keys param. */
|
||||
WEP_KEYS_MAX_NUM = 4,
|
||||
|
||||
/** Length of each WEP40 keys param. */
|
||||
WEP40_KEY_LEN_IN_BYTES = 5,
|
||||
/** Length of each WEP104 keys param. */
|
||||
WEP104_KEY_LEN_IN_BYTES = 13,
|
||||
};
|
||||
|
||||
/** Possble mask of values for KeyMgmt param. */
|
||||
enum KeyMgmtMask : uint32_t {
|
||||
WPA_EAP = 1 << 0,
|
||||
WPA_PSK = 1 << 1,
|
||||
NONE = 1 << 2,
|
||||
IEEE8021X = 1 << 3
|
||||
};
|
||||
|
||||
/** Possble mask of values for Proto param. */
|
||||
enum ProtoMask : uint32_t {
|
||||
WPA = 1 << 0,
|
||||
RSN = 1 << 1,
|
||||
/** Unused 1 << 2 */
|
||||
OSEN = 1 << 3
|
||||
};
|
||||
|
||||
/** Possble mask of values for AuthAlg param. */
|
||||
enum AuthAlgMask : uint32_t {
|
||||
OPEN = 1 << 0,
|
||||
SHARED = 1 << 1,
|
||||
LEAP = 1 << 2
|
||||
};
|
||||
|
||||
/** Possble mask of values for GroupCipher param. */
|
||||
enum GroupCipherMask : uint32_t {
|
||||
WEP40 = 1 << 1,
|
||||
WEP104 = 1 << 2,
|
||||
TKIP = 1 << 3,
|
||||
CCMP = 1 << 4
|
||||
};
|
||||
|
||||
/** Possble mask of values for PairwiseCipher param. */
|
||||
enum PairwiseCipherMask : uint32_t {
|
||||
NONE = 1 << 0,
|
||||
TKIP = 1 << 3,
|
||||
CCMP = 1 << 4
|
||||
};
|
||||
|
||||
/** Possble values for EapMethod param. */
|
||||
enum EapMethod : uint32_t {
|
||||
PEAP = 0,
|
||||
TLS = 1,
|
||||
TTLS = 2,
|
||||
PWD = 3,
|
||||
SIM = 4,
|
||||
AKA = 5,
|
||||
AKA_PRIME = 6,
|
||||
WFA_UNAUTH_TLS = 7
|
||||
};
|
||||
|
||||
/** Possble values for Phase2Method param. */
|
||||
enum EapPhase2Method : uint32_t {
|
||||
NONE = 0,
|
||||
PAP = 1,
|
||||
MSPAP = 2,
|
||||
MSPAPV2 = 3,
|
||||
GTC = 4
|
||||
};
|
||||
|
||||
/** Params of |sendNetworkEapSimGsmAuthResponse| request. (Refer RFC 4186) */
|
||||
struct NetworkResponseEapSimGsmAuthParams {
|
||||
uint8_t[8] kc;
|
||||
uint8_t[4] sres;
|
||||
};
|
||||
|
||||
/** Params of |sendNetworkEapSimUmtsAuthResponse| request. (Refer RFC 4187) */
|
||||
struct NetworkResponseEapSimUmtsAuthParams {
|
||||
vec<uint8_t> res;
|
||||
uint8_t[16] ik;
|
||||
uint8_t[16] ck;
|
||||
};
|
||||
|
||||
/**
|
||||
* Retrieves the ID allocated to this network by wpa_supplicant.
|
||||
*
|
||||
|
@ -147,593 +51,13 @@ interface ISupplicantNetwork {
|
|||
getInterfaceName() generates (SupplicantStatus status, string name);
|
||||
|
||||
/**
|
||||
* Register for callbacks from this network.
|
||||
*
|
||||
* These callbacks are invoked for events that are specific to this network.
|
||||
* Registration of multiple callback objects is supported. These objects must
|
||||
* be automatically deleted when the corresponding client process is dead or
|
||||
* if this network is removed.
|
||||
*
|
||||
* @param callback An instance of the |ISupplicantNetworkCallback| HIDL
|
||||
* interface object.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
registerCallback(ISupplicantNetworkCallback callback)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Setters for the various network params.
|
||||
* These correspond to elements of |wpa_sssid| struct used internally by
|
||||
* wpa_supplicant to represent each network.
|
||||
*/
|
||||
/**
|
||||
* Set SSID for this network.
|
||||
*
|
||||
* @param ssid value to set.
|
||||
* Max length of |ParamSizeLimits.SSID_MAX_LEN_IN_BYTES|.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setSsid(Ssid ssid) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set the network to only connect to an AP with provided BSSID.
|
||||
*
|
||||
* @param bssid value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setBssid(Bssid bssid) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set whether to send probe requests for this network (hidden).
|
||||
*
|
||||
* @param enable true to set, false otherwise.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setScanSsid(bool enable) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set key management mask for the network.
|
||||
*
|
||||
* @param keyMgmtMask value to set.
|
||||
* Combination of |KeyMgmtMask| values.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setKeyMgmt(uint32_t keyMgmtMask) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set proto mask for the network.
|
||||
*
|
||||
* @param protoMask value to set.
|
||||
* Combination of |ProtoMask| values.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setProto(uint32_t protoMask) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set auth alg mask for the network.
|
||||
*
|
||||
* @param authAlgMask value to set.
|
||||
* Combination of |ProtoMask| values.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setAuthAlg(uint32_t authAlgMask) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set group cipher mask for the network.
|
||||
*
|
||||
* @param groupCipherMask value to set.
|
||||
* Combination of |ProtoMask| values.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setGroupCipher(uint32_t groupCipherMask)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set pairwise cipher mask for the network.
|
||||
*
|
||||
* @param pairwiseCipherMask value to set.
|
||||
* Combination of |ProtoMask| values.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setPairwiseCipher(uint32_t pairwiseCipherMask)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set passphrase for WPA_PSK network.
|
||||
*
|
||||
* @param psk value to set.
|
||||
* Length of value must be between
|
||||
* |ParamSizeLimits.PSK_PASSPHRASE_MIN_LEN_IN_BYTES| and
|
||||
* |ParamSizeLimits.PSK_PASSPHRASE_MAX_LEN_IN_BYTES|.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setPskPassphrase(string psk) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set WEP key for WEP network.
|
||||
*
|
||||
* @param keyIdx Index of wep key to set.
|
||||
* Max of |ParamSizeLimits.WEP_KEYS_MAX_NUM|.
|
||||
* @param wepKey value to set.
|
||||
* Length of each key must be either
|
||||
* |ParamSizeLimits.WEP40_KEY_LEN_IN_BYTES| or
|
||||
* |ParamSizeLimits.WEP104_KEY_LEN_IN_BYTES|.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setWepKey(uint32_t keyIdx, vec<uint8_t> wepKey)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set default Tx key index for WEP network.
|
||||
*
|
||||
* @param KeyIdx value to set.
|
||||
* Max of |ParamSizeLimits.WEP_KEYS_MAX_NUM|.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setWepTxKeyIdx(uint32_t keyIdx)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set whether RequirePmf is enabled for this network.
|
||||
*
|
||||
* @param enable true to set, false otherwise.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setRequirePmf(bool enable) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Method for this network.
|
||||
*
|
||||
* @param method value to be set.
|
||||
* Must be one of |EapMethod| values.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapMethod(EapMethod method)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Phase2 Method for this network.
|
||||
*
|
||||
* @param method value to set.
|
||||
* Must be one of |EapPhase2Method| values.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapPhase2Method(EapPhase2Method method)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Identity for this network.
|
||||
*
|
||||
* @param identity value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapIdentity(vec<uint8_t> identity)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Anonymous Identity for this network.
|
||||
*
|
||||
* @param identity value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapAnonymousIdentity(vec<uint8_t> identity)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Password for this network.
|
||||
*
|
||||
* @param password value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapPassword(vec<uint8_t> password)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP CA certificate file path for this network.
|
||||
*
|
||||
* @param path value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapCACert(string path) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP CA certificate directory path for this network.
|
||||
*
|
||||
* @param path value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapCAPath(string path) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Client certificate file path for this network.
|
||||
*
|
||||
* @param path value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapClientCert(string path) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP private key file path for this network.
|
||||
*
|
||||
* @param path value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapPrivateKey(string path) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP subject match for this network.
|
||||
*
|
||||
* @param match value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapSubjectMatch(string match) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Altsubject match for this network.
|
||||
*
|
||||
* @param match value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapAltSubjectMatch(string match)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Enable EAP Open SSL Engine for this network.
|
||||
*
|
||||
* @param enable true to set, false otherwise.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapEngine(bool enable) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Open SSL Engine ID for this network.
|
||||
*
|
||||
* @param id value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapEngineID(string id) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Domain suffix match for this network.
|
||||
*
|
||||
* @param match value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapDomainSuffixMatch(string match)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Getters for the various network params.
|
||||
*/
|
||||
/**
|
||||
* Get SSID for this network.
|
||||
* Retrieves the type of the interface this network belongs to.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return ssid value set.
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
|
||||
* @return type Type of the network interface, e.g., STA.
|
||||
*/
|
||||
getSsid() generates (SupplicantStatus status, Ssid ssid);
|
||||
|
||||
/**
|
||||
* Get the BSSID set for this network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return bssid value set.
|
||||
*/
|
||||
getBssid() generates (SupplicantStatus status, Bssid bssid);
|
||||
|
||||
/**
|
||||
* Get whether Probe Requests are being sent for this network (hidden).
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return enabled true if set, false otherwise.
|
||||
*/
|
||||
getScanSsid() generates (SupplicantStatus status, bool enabled);
|
||||
|
||||
/**
|
||||
* Get the key mgmt mask set for the network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return keyMgmtMask Combination of |KeyMgmtMask| values.
|
||||
*/
|
||||
getKeyMgmt()
|
||||
generates (SupplicantStatus status, uint32_t keyMgmtMask);
|
||||
|
||||
/**
|
||||
* Get the proto mask set for the network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return protoMask Combination of |ProtoMask| values.
|
||||
*/
|
||||
getProto() generates (SupplicantStatus status, uint32_t protoMask);
|
||||
|
||||
/**
|
||||
* Get the auth alg mask set for the network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return authAlgMask Combination of |AuthAlgMask| values.
|
||||
*/
|
||||
getAuthAlg()
|
||||
generates (SupplicantStatus status, uint32_t authAlgMask);
|
||||
|
||||
/**
|
||||
* Get the group cipher mask set for the network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return groupCipherMask Combination of |GroupCipherMask| values.
|
||||
*/
|
||||
getGroupCipher()
|
||||
generates (SupplicantStatus status, uint32_t groupCipherMask);
|
||||
|
||||
/**
|
||||
* Get the pairwise cipher mask set for the network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return pairwiseCipherMask Combination of |PairwiseCipherMask| values.
|
||||
*/
|
||||
getPairwiseCipher()
|
||||
generates (SupplicantStatus status, uint32_t pairwiseCipherMask);
|
||||
|
||||
/**
|
||||
* Get passphrase for WPA_PSK network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return psk value set.
|
||||
*/
|
||||
getPskPassphrase() generates (SupplicantStatus status, string psk);
|
||||
|
||||
/**
|
||||
* Get WEP key for WEP network.
|
||||
*
|
||||
* @param keyIdx Index of wep key to be fetched.
|
||||
* Max of |WEP_KEYS_MAX_NUM|.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return wepKey value set.
|
||||
*/
|
||||
getWepKey(uint32_t keyIdx)
|
||||
generates (SupplicantStatus status, vec<uint8_t> wepKey);
|
||||
|
||||
/**
|
||||
* Get default Tx key index for WEP network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return keyIdx value set.
|
||||
*/
|
||||
getWepTxKeyIdx()
|
||||
generates (SupplicantStatus status, uint32_t keyIdx);
|
||||
|
||||
/**
|
||||
* Get whether RequirePmf is enabled for this network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return enabled true if set, false otherwise.
|
||||
*/
|
||||
getRequirePmf() generates (SupplicantStatus status, bool enabled);
|
||||
|
||||
/**
|
||||
* Enable the network for connection purposes.
|
||||
*
|
||||
* This must trigger a connection to the network if:
|
||||
* a) |noConnect| is false, and
|
||||
* b) This is the only network configured, and
|
||||
* c) Is visible in the current scan results.
|
||||
*
|
||||
* @param noConnect Only enable the network, dont trigger a connect.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
enable(bool noConnect) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Disable the network for connection purposes.
|
||||
*
|
||||
* This must trigger a disconnection from the network, if currently
|
||||
* connected to this one.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
disable() generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Initiate connection to this network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
select() generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Used to send a response to the
|
||||
* |ISupplicantNetworkCallback.onNetworkEapSimGsmAuthRequest| request.
|
||||
*
|
||||
* @param params Params to be used for EAP GSM authentication.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
sendNetworkEapSimGsmAuthResponse(NetworkResponseEapSimGsmAuthParams params)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Used to send a response to the
|
||||
* |ISupplicantNetworkCallback.onNetworkEapSimUmtsAuthRequest| request.
|
||||
*
|
||||
* @param params Params to be used for EAP UMTS authentication.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
sendNetworkEapSimUmtsAuthResponse(NetworkResponseEapSimUmtsAuthParams params)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Used to send a response to the
|
||||
* |ISupplicantNetworkCallback.onNetworkEapIdentityRequest| request.
|
||||
*
|
||||
* @param identity Identity to be used for the network.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
sendNetworkEapIdentityResponse(vec<uint8_t> identity)
|
||||
generates (SupplicantStatus status);
|
||||
getType() generates (SupplicantStatus status, IfaceType type);
|
||||
};
|
||||
|
|
45
wifi/supplicant/1.0/ISupplicantP2pIface.hal
Normal file
45
wifi/supplicant/1.0/ISupplicantP2pIface.hal
Normal file
|
@ -0,0 +1,45 @@
|
|||
/*
|
||||
* Copyright 2016 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package android.hardware.wifi.supplicant@1.0;
|
||||
|
||||
import ISupplicantIface;
|
||||
import ISupplicantP2pIfaceCallback;
|
||||
|
||||
/**
|
||||
* Interface exposed by wpa_supplicant for each P2P mode network
|
||||
* interface (e.g p2p0) it controls.
|
||||
*/
|
||||
interface ISupplicantP2pIface extends ISupplicantIface {
|
||||
/**
|
||||
* Register for callbacks from this interface.
|
||||
*
|
||||
* These callbacks are invoked for events that are specific to this interface.
|
||||
* Registration of multiple callback objects is supported. These objects must
|
||||
* be automatically deleted when the corresponding client process is dead or
|
||||
* if this interface is removed.
|
||||
*
|
||||
* @param callback An instance of the |ISupplicantP2pIfaceCallback| HIDL
|
||||
* interface object.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
|
||||
*/
|
||||
registerCallback(ISupplicantP2pIfaceCallback callback)
|
||||
generates (SupplicantStatus status);
|
||||
};
|
41
wifi/supplicant/1.0/ISupplicantP2pIfaceCallback.hal
Normal file
41
wifi/supplicant/1.0/ISupplicantP2pIfaceCallback.hal
Normal file
|
@ -0,0 +1,41 @@
|
|||
/*
|
||||
* Copyright 2016 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package android.hardware.wifi.supplicant@1.0;
|
||||
|
||||
/**
|
||||
* Callback Interface exposed by the wpa_supplicant service
|
||||
* for each P2P mode interface (ISupplicantP2pIface).
|
||||
*
|
||||
* Clients need to host an instance of this HIDL interface object and
|
||||
* pass a reference of the object to wpa_supplicant via the
|
||||
* corresponding |ISupplicantP2pIface.registerCallback| method.
|
||||
*/
|
||||
interface ISupplicantP2pIfaceCallback {
|
||||
/**
|
||||
* Used to indicate that a new network has been added.
|
||||
*
|
||||
* @param id Network ID allocated to the corresponding network.
|
||||
*/
|
||||
oneway onNetworkAdded(SupplicantNetworkId id);
|
||||
|
||||
/**
|
||||
* Used to indicate that a network has been removed.
|
||||
*
|
||||
* @param id Network ID allocated to the corresponding network.
|
||||
*/
|
||||
oneway onNetworkRemoved(SupplicantNetworkId id);
|
||||
};
|
45
wifi/supplicant/1.0/ISupplicantP2pNetwork.hal
Normal file
45
wifi/supplicant/1.0/ISupplicantP2pNetwork.hal
Normal file
|
@ -0,0 +1,45 @@
|
|||
/*
|
||||
* Copyright 2016 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package android.hardware.wifi.supplicant@1.0;
|
||||
|
||||
import ISupplicantNetwork;
|
||||
import ISupplicantP2pNetworkCallback;
|
||||
|
||||
/**
|
||||
* Interface exposed by wpa_supplicant for each P2P mode network
|
||||
* configuration it controls.
|
||||
*/
|
||||
interface ISupplicantP2pNetwork extends ISupplicantNetwork {
|
||||
/**
|
||||
* Register for callbacks from this network.
|
||||
*
|
||||
* These callbacks are invoked for events that are specific to this network.
|
||||
* Registration of multiple callback objects is supported. These objects must
|
||||
* be automatically deleted when the corresponding client process is dead or
|
||||
* if this network is removed.
|
||||
*
|
||||
* @param callback An instance of the |ISupplicantP2pNetworkCallback| HIDL
|
||||
* interface object.
|
||||
* @return status P2ptus of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantP2ptusCode.SUCCESS|,
|
||||
* |SupplicantP2ptusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantP2ptusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
registerCallback(ISupplicantP2pNetworkCallback callback)
|
||||
generates (SupplicantStatus status);
|
||||
};
|
29
wifi/supplicant/1.0/ISupplicantP2pNetworkCallback.hal
Normal file
29
wifi/supplicant/1.0/ISupplicantP2pNetworkCallback.hal
Normal file
|
@ -0,0 +1,29 @@
|
|||
/*
|
||||
* Copyright 2016 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package android.hardware.wifi.supplicant@1.0;
|
||||
|
||||
/**
|
||||
* Callback Interface exposed by the wpa_supplicant service
|
||||
* for each network (ISupplicantP2pNetwork).
|
||||
*
|
||||
* Clients need to host an instance of this HIDL interface object and
|
||||
* pass a reference of the object to wpa_supplicant via the
|
||||
* corresponding |ISupplicantP2pNetwork.registerCallback| method.
|
||||
*/
|
||||
interface ISupplicantP2pNetworkCallback {
|
||||
// TODO(rpius): Add the reqd callbacks.
|
||||
};
|
136
wifi/supplicant/1.0/ISupplicantStaIface.hal
Normal file
136
wifi/supplicant/1.0/ISupplicantStaIface.hal
Normal file
|
@ -0,0 +1,136 @@
|
|||
/*
|
||||
* Copyright 2016 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package android.hardware.wifi.supplicant@1.0;
|
||||
|
||||
import ISupplicantIface;
|
||||
import ISupplicantStaIfaceCallback;
|
||||
|
||||
/**
|
||||
* Interface exposed by wpa_supplicant for each station mode network
|
||||
* interface (e.g wlan0) it controls.
|
||||
*/
|
||||
interface ISupplicantStaIface extends ISupplicantIface {
|
||||
/**
|
||||
* Register for callbacks from this interface.
|
||||
*
|
||||
* These callbacks are invoked for events that are specific to this interface.
|
||||
* Registration of multiple callback objects is supported. These objects must
|
||||
* be automatically deleted when the corresponding client process is dead or
|
||||
* if this interface is removed.
|
||||
*
|
||||
* @param callback An instance of the |ISupplicantStaIfaceCallback| HIDL
|
||||
* interface object.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
|
||||
*/
|
||||
registerCallback(ISupplicantStaIfaceCallback callback)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Reconnect to the currently active network, even if we are already
|
||||
* connected.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_DISABLED|
|
||||
*/
|
||||
reassociate() generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Reconnect to the currently active network, if we are currently
|
||||
* disconnected.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_DISABLED|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_NOT_DISCONNECTED|
|
||||
*/
|
||||
reconnect() generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Disconnect from the current active network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_DISABLED|
|
||||
*/
|
||||
disconnect() generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Turn on/off power save mode for the interface.
|
||||
*
|
||||
* @param enable Indicate if power save is to be turned on/off.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_DISABLED|
|
||||
*/
|
||||
setPowerSave(bool enable) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Initiate TDLS discover with the provided peer mac address.
|
||||
*
|
||||
* @param macAddress MAC address of the peer.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
|
||||
*/
|
||||
initiateTdlsDiscover(MacAddress macAddress)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Initiate TDLS setup with the provided peer mac address.
|
||||
*
|
||||
* @param macAddress MAC address of the peer.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
|
||||
*/
|
||||
initiateTdlsSetup(MacAddress macAddress)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Initiate TDLS teardown with the provided peer mac address.
|
||||
*
|
||||
* @param macAddress MAC address of the peer.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
|
||||
*/
|
||||
initiateTdlsTeardown(MacAddress macAddress)
|
||||
generates (SupplicantStatus status);
|
||||
};
|
|
@ -18,13 +18,13 @@ package android.hardware.wifi.supplicant@1.0;
|
|||
|
||||
/**
|
||||
* Callback Interface exposed by the wpa_supplicant service
|
||||
* for each interface (ISupplicantIface).
|
||||
* for each station mode interface (ISupplicantStaIface).
|
||||
*
|
||||
* Clients need to host an instance of this HIDL interface object and
|
||||
* pass a reference of the object to wpa_supplicant via the
|
||||
* corresponding |ISupplicantIface.registerCallback| method.
|
||||
* corresponding |ISupplicantStaIface.registerCallback| method.
|
||||
*/
|
||||
interface ISupplicantIfaceCallback {
|
||||
interface ISupplicantStaIfaceCallback {
|
||||
/** Various states of the interface reported by |onStateChanged|.*/
|
||||
enum State : uint32_t {
|
||||
/**
|
||||
|
@ -38,7 +38,7 @@ interface ISupplicantIfaceCallback {
|
|||
* due to rfkill. wpa_supplicant refuses any new operations that would
|
||||
* use the radio until the interface has been enabled.
|
||||
*/
|
||||
INTERFACE_DISABLED = 1,
|
||||
IFACE_DISABLED = 1,
|
||||
/**
|
||||
* This state is entered if there are no enabled networks in the
|
||||
* configuration. wpa_supplicant is not trying to associate with a new
|
711
wifi/supplicant/1.0/ISupplicantStaNetwork.hal
Normal file
711
wifi/supplicant/1.0/ISupplicantStaNetwork.hal
Normal file
|
@ -0,0 +1,711 @@
|
|||
/*
|
||||
* Copyright 2016 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package android.hardware.wifi.supplicant@1.0;
|
||||
|
||||
import ISupplicantNetwork;
|
||||
import ISupplicantStaNetworkCallback;
|
||||
|
||||
/**
|
||||
* Interface exposed by wpa_supplicant for each station mode network
|
||||
* configuration it controls.
|
||||
*/
|
||||
interface ISupplicantStaNetwork extends ISupplicantNetwork {
|
||||
/**
|
||||
* Size limits for some of the params used in this interface.
|
||||
*/
|
||||
enum ParamSizeLimits : uint32_t {
|
||||
/** Max length of SSID param. */
|
||||
SSID_MAX_LEN_IN_BYTES = 32,
|
||||
|
||||
/** Min length of PSK passphrase param. */
|
||||
PSK_PASSPHRASE_MIN_LEN_IN_BYTES = 8,
|
||||
|
||||
/** Max length of PSK passphrase param. */
|
||||
PSK_PASSPHRASE_MAX_LEN_IN_BYTES = 63,
|
||||
|
||||
/** Max number of WEP keys param. */
|
||||
WEP_KEYS_MAX_NUM = 4,
|
||||
|
||||
/** Length of each WEP40 keys param. */
|
||||
WEP40_KEY_LEN_IN_BYTES = 5,
|
||||
/** Length of each WEP104 keys param. */
|
||||
WEP104_KEY_LEN_IN_BYTES = 13,
|
||||
};
|
||||
|
||||
/** Possble mask of values for KeyMgmt param. */
|
||||
enum KeyMgmtMask : uint32_t {
|
||||
WPA_EAP = 1 << 0,
|
||||
WPA_PSK = 1 << 1,
|
||||
NONE = 1 << 2,
|
||||
IEEE8021X = 1 << 3
|
||||
};
|
||||
|
||||
/** Possble mask of values for Proto param. */
|
||||
enum ProtoMask : uint32_t {
|
||||
WPA = 1 << 0,
|
||||
RSN = 1 << 1,
|
||||
/** Unused 1 << 2 */
|
||||
OSEN = 1 << 3
|
||||
};
|
||||
|
||||
/** Possble mask of values for AuthAlg param. */
|
||||
enum AuthAlgMask : uint32_t {
|
||||
OPEN = 1 << 0,
|
||||
SHARED = 1 << 1,
|
||||
LEAP = 1 << 2
|
||||
};
|
||||
|
||||
/** Possble mask of values for GroupCipher param. */
|
||||
enum GroupCipherMask : uint32_t {
|
||||
WEP40 = 1 << 1,
|
||||
WEP104 = 1 << 2,
|
||||
TKIP = 1 << 3,
|
||||
CCMP = 1 << 4
|
||||
};
|
||||
|
||||
/** Possble mask of values for PairwiseCipher param. */
|
||||
enum PairwiseCipherMask : uint32_t {
|
||||
NONE = 1 << 0,
|
||||
TKIP = 1 << 3,
|
||||
CCMP = 1 << 4
|
||||
};
|
||||
|
||||
/** Possble values for EapMethod param. */
|
||||
enum EapMethod : uint32_t {
|
||||
PEAP = 0,
|
||||
TLS = 1,
|
||||
TTLS = 2,
|
||||
PWD = 3,
|
||||
SIM = 4,
|
||||
AKA = 5,
|
||||
AKA_PRIME = 6,
|
||||
WFA_UNAUTH_TLS = 7
|
||||
};
|
||||
|
||||
/** Possble values for Phase2Method param. */
|
||||
enum EapPhase2Method : uint32_t {
|
||||
NONE = 0,
|
||||
PAP = 1,
|
||||
MSPAP = 2,
|
||||
MSPAPV2 = 3,
|
||||
GTC = 4
|
||||
};
|
||||
|
||||
/** Params of |sendNetworkEapSimGsmAuthResponse| request. (Refer RFC 4186) */
|
||||
struct NetworkResponseEapSimGsmAuthParams {
|
||||
uint8_t[8] kc;
|
||||
uint8_t[4] sres;
|
||||
};
|
||||
|
||||
/** Params of |sendNetworkEapSimUmtsAuthResponse| request. (Refer RFC 4187) */
|
||||
struct NetworkResponseEapSimUmtsAuthParams {
|
||||
vec<uint8_t> res;
|
||||
uint8_t[16] ik;
|
||||
uint8_t[16] ck;
|
||||
};
|
||||
|
||||
/**
|
||||
* Register for callbacks from this network.
|
||||
*
|
||||
* These callbacks are invoked for events that are specific to this network.
|
||||
* Registration of multiple callback objects is supported. These objects must
|
||||
* be automatically deleted when the corresponding client process is dead or
|
||||
* if this network is removed.
|
||||
*
|
||||
* @param callback An instance of the |ISupplicantStaNetworkCallback| HIDL
|
||||
* interface object.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
registerCallback(ISupplicantStaNetworkCallback callback)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Setters for the various network params.
|
||||
* These correspond to elements of |wpa_sssid| struct used internally by
|
||||
* wpa_supplicant to represent each network.
|
||||
*/
|
||||
/**
|
||||
* Set SSID for this network.
|
||||
*
|
||||
* @param ssid value to set.
|
||||
* Max length of |ParamSizeLimits.SSID_MAX_LEN_IN_BYTES|.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setSsid(Ssid ssid) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set the network to only connect to an AP with provided BSSID.
|
||||
*
|
||||
* @param bssid value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setBssid(Bssid bssid) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set whether to send probe requests for this network (hidden).
|
||||
*
|
||||
* @param enable true to set, false otherwise.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setScanSsid(bool enable) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set key management mask for the network.
|
||||
*
|
||||
* @param keyMgmtMask value to set.
|
||||
* Combination of |KeyMgmtMask| values.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setKeyMgmt(uint32_t keyMgmtMask) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set proto mask for the network.
|
||||
*
|
||||
* @param protoMask value to set.
|
||||
* Combination of |ProtoMask| values.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setProto(uint32_t protoMask) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set auth alg mask for the network.
|
||||
*
|
||||
* @param authAlgMask value to set.
|
||||
* Combination of |ProtoMask| values.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setAuthAlg(uint32_t authAlgMask) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set group cipher mask for the network.
|
||||
*
|
||||
* @param groupCipherMask value to set.
|
||||
* Combination of |ProtoMask| values.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setGroupCipher(uint32_t groupCipherMask)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set pairwise cipher mask for the network.
|
||||
*
|
||||
* @param pairwiseCipherMask value to set.
|
||||
* Combination of |ProtoMask| values.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setPairwiseCipher(uint32_t pairwiseCipherMask)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set passphrase for WPA_PSK network.
|
||||
*
|
||||
* @param psk value to set.
|
||||
* Length of value must be between
|
||||
* |ParamSizeLimits.PSK_PASSPHRASE_MIN_LEN_IN_BYTES| and
|
||||
* |ParamSizeLimits.PSK_PASSPHRASE_MAX_LEN_IN_BYTES|.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setPskPassphrase(string psk) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set WEP key for WEP network.
|
||||
*
|
||||
* @param keyIdx Index of wep key to set.
|
||||
* Max of |ParamSizeLimits.WEP_KEYS_MAX_NUM|.
|
||||
* @param wepKey value to set.
|
||||
* Length of each key must be either
|
||||
* |ParamSizeLimits.WEP40_KEY_LEN_IN_BYTES| or
|
||||
* |ParamSizeLimits.WEP104_KEY_LEN_IN_BYTES|.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setWepKey(uint32_t keyIdx, vec<uint8_t> wepKey)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set default Tx key index for WEP network.
|
||||
*
|
||||
* @param KeyIdx value to set.
|
||||
* Max of |ParamSizeLimits.WEP_KEYS_MAX_NUM|.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setWepTxKeyIdx(uint32_t keyIdx)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set whether RequirePmf is enabled for this network.
|
||||
*
|
||||
* @param enable true to set, false otherwise.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setRequirePmf(bool enable) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Method for this network.
|
||||
*
|
||||
* @param method value to be set.
|
||||
* Must be one of |EapMethod| values.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapMethod(EapMethod method)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Phase2 Method for this network.
|
||||
*
|
||||
* @param method value to set.
|
||||
* Must be one of |EapPhase2Method| values.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapPhase2Method(EapPhase2Method method)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Identity for this network.
|
||||
*
|
||||
* @param identity value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapIdentity(vec<uint8_t> identity)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Anonymous Identity for this network.
|
||||
*
|
||||
* @param identity value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapAnonymousIdentity(vec<uint8_t> identity)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Password for this network.
|
||||
*
|
||||
* @param password value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapPassword(vec<uint8_t> password)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP CA certificate file path for this network.
|
||||
*
|
||||
* @param path value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapCACert(string path) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP CA certificate directory path for this network.
|
||||
*
|
||||
* @param path value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapCAPath(string path) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Client certificate file path for this network.
|
||||
*
|
||||
* @param path value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapClientCert(string path) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP private key file path for this network.
|
||||
*
|
||||
* @param path value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapPrivateKey(string path) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP subject match for this network.
|
||||
*
|
||||
* @param match value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapSubjectMatch(string match) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Altsubject match for this network.
|
||||
*
|
||||
* @param match value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapAltSubjectMatch(string match)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Enable EAP Open SSL Engine for this network.
|
||||
*
|
||||
* @param enable true to set, false otherwise.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapEngine(bool enable) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Open SSL Engine ID for this network.
|
||||
*
|
||||
* @param id value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapEngineID(string id) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Set EAP Domain suffix match for this network.
|
||||
*
|
||||
* @param match value to set.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
setEapDomainSuffixMatch(string match)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Getters for the various network params.
|
||||
*/
|
||||
/**
|
||||
* Get SSID for this network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return ssid value set.
|
||||
*/
|
||||
getSsid() generates (SupplicantStatus status, Ssid ssid);
|
||||
|
||||
/**
|
||||
* Get the BSSID set for this network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return bssid value set.
|
||||
*/
|
||||
getBssid() generates (SupplicantStatus status, Bssid bssid);
|
||||
|
||||
/**
|
||||
* Get whether Probe Requests are being sent for this network (hidden).
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return enabled true if set, false otherwise.
|
||||
*/
|
||||
getScanSsid() generates (SupplicantStatus status, bool enabled);
|
||||
|
||||
/**
|
||||
* Get the key mgmt mask set for the network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return keyMgmtMask Combination of |KeyMgmtMask| values.
|
||||
*/
|
||||
getKeyMgmt()
|
||||
generates (SupplicantStatus status, uint32_t keyMgmtMask);
|
||||
|
||||
/**
|
||||
* Get the proto mask set for the network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return protoMask Combination of |ProtoMask| values.
|
||||
*/
|
||||
getProto() generates (SupplicantStatus status, uint32_t protoMask);
|
||||
|
||||
/**
|
||||
* Get the auth alg mask set for the network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return authAlgMask Combination of |AuthAlgMask| values.
|
||||
*/
|
||||
getAuthAlg()
|
||||
generates (SupplicantStatus status, uint32_t authAlgMask);
|
||||
|
||||
/**
|
||||
* Get the group cipher mask set for the network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return groupCipherMask Combination of |GroupCipherMask| values.
|
||||
*/
|
||||
getGroupCipher()
|
||||
generates (SupplicantStatus status, uint32_t groupCipherMask);
|
||||
|
||||
/**
|
||||
* Get the pairwise cipher mask set for the network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return pairwiseCipherMask Combination of |PairwiseCipherMask| values.
|
||||
*/
|
||||
getPairwiseCipher()
|
||||
generates (SupplicantStatus status, uint32_t pairwiseCipherMask);
|
||||
|
||||
/**
|
||||
* Get passphrase for WPA_PSK network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return psk value set.
|
||||
*/
|
||||
getPskPassphrase() generates (SupplicantStatus status, string psk);
|
||||
|
||||
/**
|
||||
* Get WEP key for WEP network.
|
||||
*
|
||||
* @param keyIdx Index of wep key to be fetched.
|
||||
* Max of |WEP_KEYS_MAX_NUM|.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return wepKey value set.
|
||||
*/
|
||||
getWepKey(uint32_t keyIdx)
|
||||
generates (SupplicantStatus status, vec<uint8_t> wepKey);
|
||||
|
||||
/**
|
||||
* Get default Tx key index for WEP network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return keyIdx value set.
|
||||
*/
|
||||
getWepTxKeyIdx()
|
||||
generates (SupplicantStatus status, uint32_t keyIdx);
|
||||
|
||||
/**
|
||||
* Get whether RequirePmf is enabled for this network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
* @return enabled true if set, false otherwise.
|
||||
*/
|
||||
getRequirePmf() generates (SupplicantStatus status, bool enabled);
|
||||
|
||||
/**
|
||||
* Enable the network for connection purposes.
|
||||
*
|
||||
* This must trigger a connection to the network if:
|
||||
* a) |noConnect| is false, and
|
||||
* b) This is the only network configured, and
|
||||
* c) Is visible in the current scan results.
|
||||
*
|
||||
* @param noConnect Only enable the network, dont trigger a connect.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
enable(bool noConnect) generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Disable the network for connection purposes.
|
||||
*
|
||||
* This must trigger a disconnection from the network, if currently
|
||||
* connected to this one.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
disable() generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Initiate connection to this network.
|
||||
*
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
select() generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Used to send a response to the
|
||||
* |ISupplicantNetworkCallback.onNetworkEapSimGsmAuthRequest| request.
|
||||
*
|
||||
* @param params Params to be used for EAP GSM authentication.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
sendNetworkEapSimGsmAuthResponse(NetworkResponseEapSimGsmAuthParams params)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Used to send a response to the
|
||||
* |ISupplicantNetworkCallback.onNetworkEapSimUmtsAuthRequest| request.
|
||||
*
|
||||
* @param params Params to be used for EAP UMTS authentication.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
sendNetworkEapSimUmtsAuthResponse(NetworkResponseEapSimUmtsAuthParams params)
|
||||
generates (SupplicantStatus status);
|
||||
|
||||
/**
|
||||
* Used to send a response to the
|
||||
* |ISupplicantNetworkCallback.onNetworkEapIdentityRequest| request.
|
||||
*
|
||||
* @param identity Identity to be used for the network.
|
||||
* @return status Status of the operation.
|
||||
* Possible status codes:
|
||||
* |SupplicantStatusCode.SUCCESS|,
|
||||
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
|
||||
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
|
||||
*/
|
||||
sendNetworkEapIdentityResponse(vec<uint8_t> identity)
|
||||
generates (SupplicantStatus status);
|
||||
};
|
|
@ -18,13 +18,13 @@ package android.hardware.wifi.supplicant@1.0;
|
|||
|
||||
/**
|
||||
* Callback Interface exposed by the wpa_supplicant service
|
||||
* for each network (ISupplicantNetwork).
|
||||
* for each network (ISupplicantStaNetwork).
|
||||
*
|
||||
* Clients need to host an instance of this HIDL interface object and
|
||||
* pass a reference of the object to wpa_supplicant via the
|
||||
* corresponding |ISupplicantNetwork.registerCallback| method.
|
||||
* corresponding |ISupplicantStaNetwork.registerCallback| method.
|
||||
*/
|
||||
interface ISupplicantNetworkCallback {
|
||||
interface ISupplicantStaNetworkCallback {
|
||||
/** Params of |onNetworkEapSimGsmAuthRequest| request. (Refer RFC 4186) */
|
||||
typedef uint8_t[16] GsmRand;
|
||||
struct NetworkRequestEapSimGsmAuthParams {
|
|
@ -65,3 +65,11 @@ typedef MacAddress Bssid;
|
|||
|
||||
/** Supplicant network ID type. */
|
||||
typedef uint32_t SupplicantNetworkId;
|
||||
|
||||
/**
|
||||
* List of Iface types supported.
|
||||
*/
|
||||
enum IfaceType : uint32_t {
|
||||
STA,
|
||||
P2P
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue