Merge "[incremental/adb] fix signature size check" am: 1c5a205fda am: fbcc431f56 am: f68bc249a9

Original change: https://android-review.googlesource.com/c/platform/system/core/+/1373276

Change-Id: Ia7cbd50a4a5f23924ec98e7e9d2a56bc1211987b
This commit is contained in:
Treehugger Robot 2020-07-30 23:35:44 +00:00 committed by Automerger Merge Worker
commit b01ccae89f

View file

@ -55,9 +55,10 @@ static std::pair<unique_fd, std::vector<char>> read_signature(Size file_size,
return {};
}
std::vector<char> invalid_signature;
auto [signature, tree_size] = read_id_sig_headers(fd);
if (st.st_size > kMaxSignatureSize) {
std::vector<char> invalid_signature;
if (signature.size() > kMaxSignatureSize) {
if (!silent) {
fprintf(stderr, "Signature is too long. Max allowed is %d. Abort.\n",
kMaxSignatureSize);
@ -65,7 +66,6 @@ static std::pair<unique_fd, std::vector<char>> read_signature(Size file_size,
return {std::move(fd), std::move(invalid_signature)};
}
auto [signature, tree_size] = read_id_sig_headers(fd);
if (auto expected = verity_tree_size_for_file(file_size); tree_size != expected) {
if (!silent) {
fprintf(stderr,