Loading current.txt +1 −1 Original line number Diff line number Diff line Loading @@ -365,7 +365,7 @@ a0aefa29881235c21e4761d15c55edc35ef85c2e0d9e01d0966176d1dbf5f811 android.hardwar 167af870fdb87e1cbbaa0fa62ef35e1031caad20dd1ba695983dedb1e9993486 android.hardware.wifi@1.2::IWifiChipEventCallback 8c7ef32fc78d5ec6e6956de3784cc2c6f42614b5272d2e461f6d60534ba38ec2 android.hardware.wifi@1.2::IWifiNanIface 1e6074efad9da333803fb7c1acdb719d51c30b2e1e92087b0420341631c30b60 android.hardware.wifi@1.2::IWifiNanIfaceEventCallback a9d733eb0d555f2a6cb79a212810e81b56ecba0e31a8ffe0916de086a29e4f88 android.hardware.wifi@1.2::IWifiStaIface f5682dbf19f712bef9cc3faa5fe3dc670b6ffbcb62a147a1d86b9d43574cd83f android.hardware.wifi@1.2::IWifiStaIface 6db2e7d274be2dca9bf3087afd1f774a68c99d2b4dc7eeaf41690e5cebcbef7a android.hardware.wifi@1.2::types ee08280de21cb41e3ec26d6ed636c701b7f70516e71fb22f4fe60a13e603f406 android.hardware.wifi.hostapd@1.0::IHostapd b2479cd7a417a1cf4f3a22db4e4579e21bac38fdcaf381e2bf10176d05397e01 android.hardware.wifi.hostapd@1.0::types Loading wifi/1.2/IWifiStaIface.hal +14 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package android.hardware.wifi@1.2; import @1.0::WifiStatus; import @1.0::MacAddress; import @1.0::IWifiStaIface; /** Loading Loading @@ -51,4 +52,17 @@ interface IWifiStaIface extends @1.0::IWifiStaIface { * @see installApfPacketFilter() */ readApfPacketFilterData() generates (WifiStatus status, vec<uint8_t> data); /** * Changes the MAC address of the Sta Interface to the given * MAC address. * * @param mac MAC address to change into. * @return status WifiStatus of the operation. * Possible status codes: * |WifiStatusCode.SUCCESS|, * |WifiStatusCode.ERROR_WIFI_IFACE_INVALID|, * |WifiStatusCode.ERROR_UNKNOWN| */ setMacAddress(MacAddress mac) generates (WifiStatus status); }; wifi/1.2/default/wifi_sta_iface.cpp +27 −0 Original line number Diff line number Diff line Loading @@ -241,6 +241,13 @@ Return<void> WifiStaIface::getDebugRxPacketFates( hidl_status_cb); } Return<void> WifiStaIface::setMacAddress(const hidl_array<uint8_t, 6>& mac, setMacAddress_cb hidl_status_cb) { return validateAndCall(this, WifiStatusCode::ERROR_WIFI_IFACE_INVALID, &WifiStaIface::setMacAddressInternal, hidl_status_cb, mac); } std::pair<WifiStatus, std::string> WifiStaIface::getNameInternal() { return {createWifiStatus(WifiStatusCode::SUCCESS), ifname_}; } Loading Loading @@ -594,6 +601,26 @@ WifiStaIface::getDebugRxPacketFatesInternal() { return {createWifiStatus(WifiStatusCode::SUCCESS), hidl_fates}; } WifiStatus WifiStaIface::setMacAddressInternal( const std::array<uint8_t, 6>& mac) { if (!iface_tool_.SetWifiUpState(false)) { LOG(ERROR) << "SetWifiUpState(false) failed."; return createWifiStatus(WifiStatusCode::ERROR_UNKNOWN); } if (!iface_tool_.SetMacAddress(ifname_.c_str(), mac)) { LOG(ERROR) << "SetMacAddress failed."; return createWifiStatus(WifiStatusCode::ERROR_UNKNOWN); } if (!iface_tool_.SetWifiUpState(true)) { LOG(ERROR) << "SetWifiUpState(true) failed."; return createWifiStatus(WifiStatusCode::ERROR_UNKNOWN); } LOG(DEBUG) << "Successfully SetMacAddress."; return createWifiStatus(WifiStatusCode::SUCCESS); } } // namespace implementation } // namespace V1_2 } // namespace wifi Loading wifi/1.2/default/wifi_sta_iface.h +6 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,8 @@ #include <android/hardware/wifi/1.0/IWifiStaIfaceEventCallback.h> #include <android/hardware/wifi/1.2/IWifiStaIface.h> #include <wifi_system/interface_tool.h> #include "hidl_callback_util.h" #include "wifi_legacy_hal.h" Loading Loading @@ -103,6 +105,8 @@ class WifiStaIface : public V1_2::IWifiStaIface { getDebugTxPacketFates_cb hidl_status_cb) override; Return<void> getDebugRxPacketFates( getDebugRxPacketFates_cb hidl_status_cb) override; Return<void> setMacAddress(const hidl_array<uint8_t, 6>& mac, setMacAddress_cb hidl_status_cb) override; private: // Corresponding worker functions for the HIDL methods. Loading Loading @@ -146,12 +150,14 @@ class WifiStaIface : public V1_2::IWifiStaIface { getDebugTxPacketFatesInternal(); std::pair<WifiStatus, std::vector<WifiDebugRxPacketFateReport>> getDebugRxPacketFatesInternal(); WifiStatus setMacAddressInternal(const std::array<uint8_t, 6>& mac); std::string ifname_; std::weak_ptr<legacy_hal::WifiLegacyHal> legacy_hal_; bool is_valid_; hidl_callback_util::HidlCallbackHandler<IWifiStaIfaceEventCallback> event_cb_handler_; wifi_system::InterfaceTool iface_tool_; DISALLOW_COPY_AND_ASSIGN(WifiStaIface); }; Loading wifi/1.2/vts/functional/Android.bp +1 −0 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ cc_test { srcs: [ "VtsHalWifiV1_2TargetTest.cpp", "wifi_chip_hidl_test.cpp", "wifi_sta_iface_hidl_test.cpp", ], static_libs: [ "VtsHalWifiV1_0TargetTestUtil", Loading Loading
current.txt +1 −1 Original line number Diff line number Diff line Loading @@ -365,7 +365,7 @@ a0aefa29881235c21e4761d15c55edc35ef85c2e0d9e01d0966176d1dbf5f811 android.hardwar 167af870fdb87e1cbbaa0fa62ef35e1031caad20dd1ba695983dedb1e9993486 android.hardware.wifi@1.2::IWifiChipEventCallback 8c7ef32fc78d5ec6e6956de3784cc2c6f42614b5272d2e461f6d60534ba38ec2 android.hardware.wifi@1.2::IWifiNanIface 1e6074efad9da333803fb7c1acdb719d51c30b2e1e92087b0420341631c30b60 android.hardware.wifi@1.2::IWifiNanIfaceEventCallback a9d733eb0d555f2a6cb79a212810e81b56ecba0e31a8ffe0916de086a29e4f88 android.hardware.wifi@1.2::IWifiStaIface f5682dbf19f712bef9cc3faa5fe3dc670b6ffbcb62a147a1d86b9d43574cd83f android.hardware.wifi@1.2::IWifiStaIface 6db2e7d274be2dca9bf3087afd1f774a68c99d2b4dc7eeaf41690e5cebcbef7a android.hardware.wifi@1.2::types ee08280de21cb41e3ec26d6ed636c701b7f70516e71fb22f4fe60a13e603f406 android.hardware.wifi.hostapd@1.0::IHostapd b2479cd7a417a1cf4f3a22db4e4579e21bac38fdcaf381e2bf10176d05397e01 android.hardware.wifi.hostapd@1.0::types Loading
wifi/1.2/IWifiStaIface.hal +14 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package android.hardware.wifi@1.2; import @1.0::WifiStatus; import @1.0::MacAddress; import @1.0::IWifiStaIface; /** Loading Loading @@ -51,4 +52,17 @@ interface IWifiStaIface extends @1.0::IWifiStaIface { * @see installApfPacketFilter() */ readApfPacketFilterData() generates (WifiStatus status, vec<uint8_t> data); /** * Changes the MAC address of the Sta Interface to the given * MAC address. * * @param mac MAC address to change into. * @return status WifiStatus of the operation. * Possible status codes: * |WifiStatusCode.SUCCESS|, * |WifiStatusCode.ERROR_WIFI_IFACE_INVALID|, * |WifiStatusCode.ERROR_UNKNOWN| */ setMacAddress(MacAddress mac) generates (WifiStatus status); };
wifi/1.2/default/wifi_sta_iface.cpp +27 −0 Original line number Diff line number Diff line Loading @@ -241,6 +241,13 @@ Return<void> WifiStaIface::getDebugRxPacketFates( hidl_status_cb); } Return<void> WifiStaIface::setMacAddress(const hidl_array<uint8_t, 6>& mac, setMacAddress_cb hidl_status_cb) { return validateAndCall(this, WifiStatusCode::ERROR_WIFI_IFACE_INVALID, &WifiStaIface::setMacAddressInternal, hidl_status_cb, mac); } std::pair<WifiStatus, std::string> WifiStaIface::getNameInternal() { return {createWifiStatus(WifiStatusCode::SUCCESS), ifname_}; } Loading Loading @@ -594,6 +601,26 @@ WifiStaIface::getDebugRxPacketFatesInternal() { return {createWifiStatus(WifiStatusCode::SUCCESS), hidl_fates}; } WifiStatus WifiStaIface::setMacAddressInternal( const std::array<uint8_t, 6>& mac) { if (!iface_tool_.SetWifiUpState(false)) { LOG(ERROR) << "SetWifiUpState(false) failed."; return createWifiStatus(WifiStatusCode::ERROR_UNKNOWN); } if (!iface_tool_.SetMacAddress(ifname_.c_str(), mac)) { LOG(ERROR) << "SetMacAddress failed."; return createWifiStatus(WifiStatusCode::ERROR_UNKNOWN); } if (!iface_tool_.SetWifiUpState(true)) { LOG(ERROR) << "SetWifiUpState(true) failed."; return createWifiStatus(WifiStatusCode::ERROR_UNKNOWN); } LOG(DEBUG) << "Successfully SetMacAddress."; return createWifiStatus(WifiStatusCode::SUCCESS); } } // namespace implementation } // namespace V1_2 } // namespace wifi Loading
wifi/1.2/default/wifi_sta_iface.h +6 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,8 @@ #include <android/hardware/wifi/1.0/IWifiStaIfaceEventCallback.h> #include <android/hardware/wifi/1.2/IWifiStaIface.h> #include <wifi_system/interface_tool.h> #include "hidl_callback_util.h" #include "wifi_legacy_hal.h" Loading Loading @@ -103,6 +105,8 @@ class WifiStaIface : public V1_2::IWifiStaIface { getDebugTxPacketFates_cb hidl_status_cb) override; Return<void> getDebugRxPacketFates( getDebugRxPacketFates_cb hidl_status_cb) override; Return<void> setMacAddress(const hidl_array<uint8_t, 6>& mac, setMacAddress_cb hidl_status_cb) override; private: // Corresponding worker functions for the HIDL methods. Loading Loading @@ -146,12 +150,14 @@ class WifiStaIface : public V1_2::IWifiStaIface { getDebugTxPacketFatesInternal(); std::pair<WifiStatus, std::vector<WifiDebugRxPacketFateReport>> getDebugRxPacketFatesInternal(); WifiStatus setMacAddressInternal(const std::array<uint8_t, 6>& mac); std::string ifname_; std::weak_ptr<legacy_hal::WifiLegacyHal> legacy_hal_; bool is_valid_; hidl_callback_util::HidlCallbackHandler<IWifiStaIfaceEventCallback> event_cb_handler_; wifi_system::InterfaceTool iface_tool_; DISALLOW_COPY_AND_ASSIGN(WifiStaIface); }; Loading
wifi/1.2/vts/functional/Android.bp +1 −0 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ cc_test { srcs: [ "VtsHalWifiV1_2TargetTest.cpp", "wifi_chip_hidl_test.cpp", "wifi_sta_iface_hidl_test.cpp", ], static_libs: [ "VtsHalWifiV1_0TargetTestUtil", Loading