keystore: replace VLA with vector
According to Google coding style, no VLA since
it is not part of c++ standard and could blow up
the stack.
Change-Id: Ie79b56cd9a02ecebba76d88af727c6accbcfd45c
Signed-off-by: Bin Chen <pierr.chen@gmail.com>
diff --git a/keystore/keystore.cpp b/keystore/keystore.cpp
index 457a60a..3c87fd5 100644
--- a/keystore/keystore.cpp
+++ b/keystore/keystore.cpp
@@ -117,22 +117,22 @@
}
android::String8 KeyStore::getKeyName(const android::String8& keyName) {
- char encoded[encode_key_length(keyName) + 1]; // add 1 for null char
- encode_key(encoded, keyName);
- return android::String8(encoded);
+ std::vector<char> encoded(encode_key_length(keyName) + 1); // add 1 for null char
+ encode_key(encoded.data(), keyName);
+ return android::String8(encoded.data());
}
android::String8 KeyStore::getKeyNameForUid(const android::String8& keyName, uid_t uid) {
- char encoded[encode_key_length(keyName) + 1]; // add 1 for null char
- encode_key(encoded, keyName);
- return android::String8::format("%u_%s", uid, encoded);
+ std::vector<char> encoded(encode_key_length(keyName) + 1); // add 1 for null char
+ encode_key(encoded.data(), keyName);
+ return android::String8::format("%u_%s", uid, encoded.data());
}
android::String8 KeyStore::getKeyNameForUidWithDir(const android::String8& keyName, uid_t uid) {
- char encoded[encode_key_length(keyName) + 1]; // add 1 for null char
- encode_key(encoded, keyName);
+ std::vector<char> encoded(encode_key_length(keyName) + 1); // add 1 for null char
+ encode_key(encoded.data(), keyName);
return android::String8::format("%s/%u_%s", getUserStateByUid(uid)->getUserDirName(), uid,
- encoded);
+ encoded.data());
}
void KeyStore::resetUser(uid_t userId, bool keepUnenryptedEntries) {