Merge "wifi: Add scanning mac oui setter"

This commit is contained in:
Treehugger Robot
2017-02-02 19:28:06 +00:00
committed by Gerrit Code Review
5 changed files with 38 additions and 0 deletions

View File

@@ -437,6 +437,19 @@ interface IWifiStaIface extends IWifiIface {
*/
stopSendingKeepAlivePackets(CommandId cmdId) generates (WifiStatus status);
/**
* Set the MAC OUI during scanning.
* An OUI {Organizationally Unique Identifier} is a 24-bit number that
* uniquely identifies a vendor or manufacturer.
*
* @return status WifiStatus of the operation.
* Possible status codes:
* |WifiStatusCode.SUCCESS|,
* |WifiStatusCode.ERROR_WIFI_IFACE_INVALID|,
* |WifiStatusCode.ERROR_UNKNOWN|
*/
setScanningMacOui(uint8_t[3] oui) generates (WifiStatus status);
/**
* API to start packet fate monitoring.
* - Once started, monitoring must remain active until HAL is stopped or the

View File

@@ -685,6 +685,12 @@ wifi_error WifiLegacyHal::stopSendingOffloadedPacket(uint32_t cmd_id) {
cmd_id, wlan_interface_handle_);
}
wifi_error WifiLegacyHal::setScanningMacOui(const std::array<uint8_t, 3>& oui) {
std::vector<uint8_t> oui_internal(oui.data(), oui.data() + oui.size());
return global_func_table_.wifi_set_scanning_mac_oui(wlan_interface_handle_,
oui_internal.data());
}
std::pair<wifi_error, uint32_t> WifiLegacyHal::getLoggerSupportedFeatureSet() {
uint32_t supported_features;
wifi_error status = global_func_table_.wifi_get_logger_supported_feature_set(

View File

@@ -192,6 +192,7 @@ class WifiLegacyHal {
const std::array<uint8_t, 6>& dst_address,
uint32_t period_in_ms);
wifi_error stopSendingOffloadedPacket(uint32_t cmd_id);
wifi_error setScanningMacOui(const std::array<uint8_t, 3>& oui);
// Logger/debug functions.
std::pair<wifi_error, uint32_t> getLoggerSupportedFeatureSet();
wifi_error startPktFateMonitoring();

View File

@@ -250,6 +250,15 @@ Return<void> WifiStaIface::stopSendingKeepAlivePackets(
cmd_id);
}
Return<void> WifiStaIface::setScanningMacOui(
const hidl_array<uint8_t, 3>& oui, setScanningMacOui_cb hidl_status_cb) {
return validateAndCall(this,
WifiStatusCode::ERROR_WIFI_IFACE_INVALID,
&WifiStaIface::setScanningMacOuiInternal,
hidl_status_cb,
oui);
}
Return<void> WifiStaIface::startDebugPacketFateMonitoring(
startDebugPacketFateMonitoring_cb hidl_status_cb) {
return validateAndCall(this,
@@ -553,6 +562,12 @@ WifiStatus WifiStaIface::stopSendingKeepAlivePacketsInternal(uint32_t cmd_id) {
return createWifiStatusFromLegacyError(legacy_status);
}
WifiStatus WifiStaIface::setScanningMacOuiInternal(const std::array<uint8_t, 3>& oui) {
legacy_hal::wifi_error legacy_status =
legacy_hal_.lock()->setScanningMacOui(oui);
return createWifiStatusFromLegacyError(legacy_status);
}
WifiStatus WifiStaIface::startDebugPacketFateMonitoringInternal() {
legacy_hal::wifi_error legacy_status =
legacy_hal_.lock()->startPktFateMonitoring();

View File

@@ -95,6 +95,8 @@ class WifiStaIface : public IWifiStaIface {
startSendingKeepAlivePackets_cb hidl_status_cb) override;
Return<void> stopSendingKeepAlivePackets(
uint32_t cmd_id, stopSendingKeepAlivePackets_cb hidl_status_cb) override;
Return<void> setScanningMacOui(const hidl_array<uint8_t, 3>& oui,
setScanningMacOui_cb hidl_status_cb) override;
Return<void> startDebugPacketFateMonitoring(
startDebugPacketFateMonitoring_cb hidl_status_cb) override;
Return<void> getDebugTxPacketFates(
@@ -140,6 +142,7 @@ class WifiStaIface : public IWifiStaIface {
const std::array<uint8_t, 6>& dst_address,
uint32_t period_in_ms);
WifiStatus stopSendingKeepAlivePacketsInternal(uint32_t cmd_id);
WifiStatus setScanningMacOuiInternal(const std::array<uint8_t, 3>& oui);
WifiStatus startDebugPacketFateMonitoringInternal();
std::pair<WifiStatus, std::vector<WifiDebugTxPacketFateReport>>
getDebugTxPacketFatesInternal();