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

Commit c637017b authored by Roshan Pius's avatar Roshan Pius Committed by android-build-merger
Browse files

Merge "supplicant(interface): Add the new radio work methods"

am: 4aceb63b

Change-Id: If222b06393c5ea32b39cb8737a9cfd00a6e1cc3c
parents 4d3c1ea9 4aceb63b
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -137,6 +137,19 @@ interface ISupplicantIface {
   */
  setWpsDeviceName(string name) generates (SupplicantStatus status);

  /**
   * Set the device type for WPS operations.
   *
   * @parm type Type of device. Refer to section B.1 of Wifi P2P
   *       Technical specification v1.2.
   * @return status Status of the operation.
   *         Possible status codes:
   *         |SupplicantStatusCode.SUCCESS|,
   *         |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
   *         |SupplicantStatusCode.FAILURE_UNKNOWN|
   */
  setWpsDeviceType(uint8_t[8] type) generates (SupplicantStatus status);

  /**
   * Set the manufacturer for WPS operations.
   * The manufacturer of the device (up to |WPS_MANUFACTURER_MAX_LEN| ASCII
+55 −0
Original line number Diff line number Diff line
@@ -67,6 +67,10 @@ interface ISupplicantStaIface extends ISupplicantIface {
    SENSE = 2
  };

  enum ExtRadioWorkDefaults : uint32_t {
    TIMEOUT_IN_SECS = 10
  };

  /**
   * Register for callbacks from this interface.
   *
@@ -405,4 +409,55 @@ interface ISupplicantStaIface extends ISupplicantIface {
   *         |SupplicantStatusCode.FAILURE_IFACE_INVALID|
   */
  setExternalSim(bool useExternalSim) generates (SupplicantStatus status);

  /**
   * External programs can request supplicant to not start offchannel
   * operations during other tasks that may need exclusive control of the
   * radio.
   *
   * This method can be used to reserve a slot for radio access. If freq is
   * specified, other radio work items on the same channel can be completed in
   * parallel. Otherwise, all other radio work items are blocked during
   * execution. Timeout must be set to |ExtRadioWorkDefaults.TIMEOUT_IN_SECS|
   * seconds by default to avoid blocking supplicant operations on the iface
   * for excessive time. If a longer (or shorter) safety timeout is needed,
   * that may be specified with the optional timeout parameter. This command
   * returns an identifier for the radio work item.
   *
   * Once the radio work item has been started,
   * |ISupplicant.onExtRadioWorkStart| callback is indicated that the external
   * processing can start.
   *
   * @param name Name for the radio work being added.
   * @param freqInMhz Frequency to specify. Set to 0 for all channels.
   * @param timeoutInSec Timeout tospecify. Set to 0 for default timeout.
   * @return status Status of the operation.
   *         Possible status codes:
   *         |SupplicantStatusCode.SUCCESS|,
   *         |SupplicantStatusCode.FAILURE_UNKNOWN|
   * @return id Identifier for this radio work.
   */
  addExtRadioWork(string name, uint32_t freqInMhz, uint32_t timeoutInSec)
      generates (SupplicantStatus status, uint32_t id);

  /**
   * Indicates to supplicant that the external radio work has completed.
   * This allows other radio works to be performed. If this method is not
   * invoked (e.g., due to the external program terminating), supplicant
   * must time out the radio work item on the iface and send
   * |ISupplicantCallback.onExtRadioWorkTimeout| event to indicate
   * that this has happened.
   *
   * This method may also be used to cancel items that have been scheduled
   * via |addExtRadioWork|, but have not yet been started (notified via
   * |ISupplicantCallback.onExtRadioWorkStart|).
   *
   * @return id Identifier generated for the radio work addition
   *         (using |addExtRadioWork|).
   * @return status Status of the operation.
   *         Possible status codes:
   *         |SupplicantStatusCode.SUCCESS|,
   *         |SupplicantStatusCode.FAILURE_UNKNOWN|
   */
  removeExtRadioWork(uint32_t id) generates (SupplicantStatus status);
};
+14 −0
Original line number Diff line number Diff line
@@ -326,4 +326,18 @@ interface ISupplicantStaIfaceCallback {
   * Used to indicate the overlap of a WPS PBC connection attempt.
   */
  oneway onWpsEventPbcOverlap();

  /**
   * Used to indicate that the external radio work can start now.
   *
   * @return id Identifier generated for the radio work request.
   */
  oneway onExtRadioWorkStart(uint32_t id);

  /**
   * Used to indicate that the external radio work request has timed out.
   *
   * @return id Identifier generated for the radio work request.
   */
  oneway onExtRadioWorkTimeout(uint32_t id);
};
+76 −2
Original line number Diff line number Diff line
@@ -508,8 +508,30 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
   */
  setEapDomainSuffixMatch(string match)
      generates (SupplicantStatus status);

  /**
   * Get ID string set for this network.
   * This field can be used to enable proactive key caching which is also
   * known as opportunistic PMKSA caching for WPA2. This is disabled (0)
   * by default unless default value is changed with the global okc=1
   * parameter.
   *
   * Proactive key caching is used to make supplicant assume that the APs
   * are using the same PMK and generate PMKSA cache entries without
   * doing RSN pre-authentication. This requires support from the AP side
   * and is normally used with wireless switches that co-locate the
   * authenticator.
   *
   * @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|
   */
  setProactiveKeyCaching(bool enable) generates (SupplicantStatus status);

  /**
   * Set ID string for this network.
   * Network identifier string for external scripts.
   *
   * @return idStr ID string value to set.
@@ -522,6 +544,20 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
   */
  setIdStr(string idStr) generates (SupplicantStatus status);

  /**
   * Set PPS MO ID for this network.
   * (Hotspot 2.0 PerProviderSubscription/UpdateIdentifier)
   *
   * @return id ID value to set.
   * @return status Status of the operation.
   *         Possible status codes:
   *         |SupplicantStatusCode.SUCCESS|,
   *         |SupplicantStatusCode.FAILURE_ARGS_INVALID|,
   *         |SupplicantStatusCode.FAILURE_UNKNOWN|,
   *         |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
   */
  setUpdateIdentifier(uint32_t id) generates (SupplicantStatus status);

  /**
   * Getters for the various network params.
   */
@@ -912,9 +948,21 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
   *         |SupplicantStatusCode.FAILURE_UNKNOWN|,
   *         |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
   */
  sendNetworkEapSimGsmAuthResponse(NetworkResponseEapSimGsmAuthParams params)
  sendNetworkEapSimGsmAuthResponse(vec<NetworkResponseEapSimGsmAuthParams> params)
      generates (SupplicantStatus status);

  /**
   * Used to send a response to the
   * |ISupplicantNetworkCallback.onNetworkEapSimGsmAuthRequest| request.
   *
   * @return status Status of the operation.
   *         Possible status codes:
   *         |SupplicantStatusCode.SUCCESS|,
   *         |SupplicantStatusCode.FAILURE_UNKNOWN|,
   *         |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
   */
  sendNetworkEapSimGsmAuthFailure() generates (SupplicantStatus status);

  /**
   * Used to send a response to the
   * |ISupplicantNetworkCallback.onNetworkEapSimUmtsAuthRequest| request.
@@ -929,6 +977,32 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
  sendNetworkEapSimUmtsAuthResponse(NetworkResponseEapSimUmtsAuthParams params)
      generates (SupplicantStatus status);

  /**
   * Used to send a response to the
   * |ISupplicantNetworkCallback.onNetworkEapSimUmtsAuthRequest| request.
   *
   * @param auts 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|
   */
  sendNetworkEapSimUmtsAutsResponse(uint8_t[14] auts)
      generates (SupplicantStatus status);

  /**
   * Used to send a response to the
   * |ISupplicantNetworkCallback.onNetworkEapSimUmtsAuthRequest| request.
   *
   * @return status Status of the operation.
   *         Possible status codes:
   *         |SupplicantStatusCode.SUCCESS|,
   *         |SupplicantStatusCode.FAILURE_UNKNOWN|,
   *         |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
   */
  sendNetworkEapSimUmtsAuthFailure() generates (SupplicantStatus status);

  /**
   * Used to send a response to the
   * |ISupplicantNetworkCallback.onNetworkEapIdentityRequest| request.