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

Commit 4e2ca703 authored by David Drysdale's avatar David Drysdale Committed by Automerger Merge Worker
Browse files

Merge "KeyMint VTS: don't crash on invalid patchlevel" am: e1152b63 am:...

Merge "KeyMint VTS: don't crash on invalid patchlevel" am: e1152b63 am: 4e9cab82 am: 69d66e13 am: b8dfd10b am: 767ea5b1

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

Change-Id: I50ea6e748154c6ce771af537b0d5fa43ccef28bf
parents 50e567ef 767ea5b1
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -1365,11 +1365,16 @@ bool verify_attestation_record(const string& challenge, //
                att_hw_enforced[i].tag == TAG_VENDOR_PATCHLEVEL) {
                std::string date =
                        std::to_string(att_hw_enforced[i].value.get<KeyParameterValue::integer>());

                // strptime seems to require delimiters, but the tag value will
                // be YYYYMMDD
                if (date.size() != 8) {
                    ADD_FAILURE() << "Tag " << att_hw_enforced[i].tag
                                  << " with invalid format (not YYYYMMDD): " << date;
                    return false;
                }
                date.insert(6, "-");
                date.insert(4, "-");
                EXPECT_EQ(date.size(), 10);
                struct tm time;
                strptime(date.c_str(), "%Y-%m-%d", &time);