Fix clang-tidy performance warnings in system/security.
* Use const reference type for parameters, local variables,
and for-loop index variables to avoid unnecessary copy.
Bug: 30407689
Bug: 30413223
Bug: 30413862
Change-Id: I3b9383f34e466ca6b5290bad802d535443fd0187
Test: build with WITH_TIDY=1
diff --git a/keystore/operation.h b/keystore/operation.h
index 083ec29..263b5c9 100644
--- a/keystore/operation.h
+++ b/keystore/operation.h
@@ -49,24 +49,24 @@
explicit OperationMap(IBinder::DeathRecipient* deathRecipient);
sp<IBinder> addOperation(keymaster_operation_handle_t handle, uint64_t keyid,
keymaster_purpose_t purpose, const keymaster2_device_t* dev,
- sp<IBinder> appToken, keymaster_key_characteristics_t* characteristics,
+ const sp<IBinder>& appToken, keymaster_key_characteristics_t* characteristics,
bool pruneable);
- bool getOperation(sp<IBinder> token, keymaster_operation_handle_t* outHandle,
+ bool getOperation(const sp<IBinder>& token, keymaster_operation_handle_t* outHandle,
uint64_t* outKeyid, keymaster_purpose_t* outPurpose,
const keymaster2_device_t** outDev,
const keymaster_key_characteristics_t** outCharacteristics);
- bool removeOperation(sp<IBinder> token);
+ bool removeOperation(const sp<IBinder>& token);
bool hasPruneableOperation() const;
size_t getOperationCount() const { return mMap.size(); }
size_t getPruneableOperationCount() const;
- bool getOperationAuthToken(sp<IBinder> token, const hw_auth_token_t** outToken);
- bool setOperationAuthToken(sp<IBinder> token, const hw_auth_token_t* authToken);
+ bool getOperationAuthToken(const sp<IBinder>& token, const hw_auth_token_t** outToken);
+ bool setOperationAuthToken(const sp<IBinder>& token, const hw_auth_token_t* authToken);
sp<IBinder> getOldestPruneableOperation();
- std::vector<sp<IBinder>> getOperationsForToken(sp<IBinder> appToken);
+ std::vector<sp<IBinder>> getOperationsForToken(const sp<IBinder>& appToken);
private:
- void updateLru(sp<IBinder> token);
- void removeOperationTracking(sp<IBinder> token, sp<IBinder> appToken);
+ void updateLru(const sp<IBinder>& token);
+ void removeOperationTracking(const sp<IBinder>& token, const sp<IBinder>& appToken);
struct Operation {
Operation();
Operation(keymaster_operation_handle_t handle, uint64_t keyid, keymaster_purpose_t purpose,