Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fc5a7797 authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "wifi: Add scanning mac oui setter"

parents faad7891 795bb815
Loading
Loading
Loading
Loading
+13 −0
Original line number Original line Diff line number Diff line
@@ -437,6 +437,19 @@ interface IWifiStaIface extends IWifiIface {
   */
   */
  stopSendingKeepAlivePackets(CommandId cmdId) generates (WifiStatus status);
  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.
   * API to start packet fate monitoring.
   * - Once started, monitoring must remain active until HAL is stopped or the
   * - Once started, monitoring must remain active until HAL is stopped or the
+6 −0
Original line number Original line Diff line number Diff line
@@ -685,6 +685,12 @@ wifi_error WifiLegacyHal::stopSendingOffloadedPacket(uint32_t cmd_id) {
      cmd_id, wlan_interface_handle_);
      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() {
std::pair<wifi_error, uint32_t> WifiLegacyHal::getLoggerSupportedFeatureSet() {
  uint32_t supported_features;
  uint32_t supported_features;
  wifi_error status = global_func_table_.wifi_get_logger_supported_feature_set(
  wifi_error status = global_func_table_.wifi_get_logger_supported_feature_set(
+1 −0
Original line number Original line Diff line number Diff line
@@ -192,6 +192,7 @@ class WifiLegacyHal {
      const std::array<uint8_t, 6>& dst_address,
      const std::array<uint8_t, 6>& dst_address,
      uint32_t period_in_ms);
      uint32_t period_in_ms);
  wifi_error stopSendingOffloadedPacket(uint32_t cmd_id);
  wifi_error stopSendingOffloadedPacket(uint32_t cmd_id);
  wifi_error setScanningMacOui(const std::array<uint8_t, 3>& oui);
  // Logger/debug functions.
  // Logger/debug functions.
  std::pair<wifi_error, uint32_t> getLoggerSupportedFeatureSet();
  std::pair<wifi_error, uint32_t> getLoggerSupportedFeatureSet();
  wifi_error startPktFateMonitoring();
  wifi_error startPktFateMonitoring();
+15 −0
Original line number Original line Diff line number Diff line
@@ -250,6 +250,15 @@ Return<void> WifiStaIface::stopSendingKeepAlivePackets(
                         cmd_id);
                         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(
Return<void> WifiStaIface::startDebugPacketFateMonitoring(
    startDebugPacketFateMonitoring_cb hidl_status_cb) {
    startDebugPacketFateMonitoring_cb hidl_status_cb) {
  return validateAndCall(this,
  return validateAndCall(this,
@@ -553,6 +562,12 @@ WifiStatus WifiStaIface::stopSendingKeepAlivePacketsInternal(uint32_t cmd_id) {
  return createWifiStatusFromLegacyError(legacy_status);
  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() {
WifiStatus WifiStaIface::startDebugPacketFateMonitoringInternal() {
  legacy_hal::wifi_error legacy_status =
  legacy_hal::wifi_error legacy_status =
      legacy_hal_.lock()->startPktFateMonitoring();
      legacy_hal_.lock()->startPktFateMonitoring();
+3 −0
Original line number Original line Diff line number Diff line
@@ -95,6 +95,8 @@ class WifiStaIface : public IWifiStaIface {
      startSendingKeepAlivePackets_cb hidl_status_cb) override;
      startSendingKeepAlivePackets_cb hidl_status_cb) override;
  Return<void> stopSendingKeepAlivePackets(
  Return<void> stopSendingKeepAlivePackets(
      uint32_t cmd_id, stopSendingKeepAlivePackets_cb hidl_status_cb) override;
      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(
  Return<void> startDebugPacketFateMonitoring(
      startDebugPacketFateMonitoring_cb hidl_status_cb) override;
      startDebugPacketFateMonitoring_cb hidl_status_cb) override;
  Return<void> getDebugTxPacketFates(
  Return<void> getDebugTxPacketFates(
@@ -140,6 +142,7 @@ class WifiStaIface : public IWifiStaIface {
      const std::array<uint8_t, 6>& dst_address,
      const std::array<uint8_t, 6>& dst_address,
      uint32_t period_in_ms);
      uint32_t period_in_ms);
  WifiStatus stopSendingKeepAlivePacketsInternal(uint32_t cmd_id);
  WifiStatus stopSendingKeepAlivePacketsInternal(uint32_t cmd_id);
  WifiStatus setScanningMacOuiInternal(const std::array<uint8_t, 3>& oui);
  WifiStatus startDebugPacketFateMonitoringInternal();
  WifiStatus startDebugPacketFateMonitoringInternal();
  std::pair<WifiStatus, std::vector<WifiDebugTxPacketFateReport>>
  std::pair<WifiStatus, std::vector<WifiDebugTxPacketFateReport>>
  getDebugTxPacketFatesInternal();
  getDebugTxPacketFatesInternal();