Merge "Change the way rkp tool obtains serial number" into main am: 40f1230a1d am: c3e1e032a9 am: c9674f6535

Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/2861829

Change-Id: I62f6ba3f15b62842bae2ba2e2ad37196f013ca5c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Seth Moore
2023-12-07 21:14:51 +00:00
committed by Automerger Merge Worker
3 changed files with 6 additions and 5 deletions

View File

@@ -130,7 +130,7 @@ struct JsonOutput {
* }
*/
JsonOutput jsonEncodeCsrWithBuild(const std::string instance_name,
const cppbor::Array& csr);
const cppbor::Array& csr, const std::string serialno_prop);
/**
* Parses a DeviceInfo structure from the given CBOR data. The parsed data is then validated to

View File

@@ -337,9 +337,9 @@ ErrMsgOr<std::vector<BccEntryData>> validateBcc(const cppbor::Array* bcc,
return result;
}
JsonOutput jsonEncodeCsrWithBuild(const std::string instance_name, const cppbor::Array& csr) {
JsonOutput jsonEncodeCsrWithBuild(const std::string instance_name, const cppbor::Array& csr,
const std::string serialno_prop) {
const std::string kFingerprintProp = "ro.build.fingerprint";
const std::string kSerialNoProp = "ro.serialno";
if (!::android::base::WaitForPropertyCreation(kFingerprintProp)) {
return JsonOutput::Error("Unable to read build fingerprint");
@@ -364,7 +364,7 @@ JsonOutput jsonEncodeCsrWithBuild(const std::string instance_name, const cppbor:
Json::Value json(Json::objectValue);
json["name"] = instance_name;
json["build_fingerprint"] = ::android::base::GetProperty(kFingerprintProp, /*default=*/"");
json["serialno"] = ::android::base::GetProperty(kSerialNoProp, /*default=*/"");
json["serialno"] = ::android::base::GetProperty(serialno_prop, /*default=*/"");
json["csr"] = base64.data(); // Boring writes a NUL-terminated c-string
Json::StreamWriterBuilder factory;

View File

@@ -182,10 +182,11 @@ TEST(RemoteProvUtilsTest, GetProdEekChain) {
}
TEST(RemoteProvUtilsTest, JsonEncodeCsr) {
const std::string kSerialNoProp = "ro.serialno";
cppbor::Array array;
array.add(1);
auto [json, error] = jsonEncodeCsrWithBuild(std::string("test"), array);
auto [json, error] = jsonEncodeCsrWithBuild(std::string("test"), array, kSerialNoProp);
ASSERT_TRUE(error.empty()) << error;