aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTianjie Xu2017-01-18 16:26:47 -0600
committerandroid-build-merger2017-01-18 16:26:47 -0600
commitd3d5e54a45eccac59eb72d5becfa9e320403b4f5 (patch)
tree46baf45a74a9620f7b019239dc3fca7942d462b7 /verifier.cpp
parentaa02888e55147ec78fa5636a87e2447bda136d68 (diff)
parentfb80b4f72dd29d1dc61c434e86712eedb652f98f (diff)
downloadplatform-bootable-recovery-d3d5e54a45eccac59eb72d5becfa9e320403b4f5.tar.gz
platform-bootable-recovery-d3d5e54a45eccac59eb72d5becfa9e320403b4f5.tar.xz
platform-bootable-recovery-d3d5e54a45eccac59eb72d5becfa9e320403b4f5.zip
Add a checker for signature boundary in verifier am: 54ea136fde am: 0a34b17c8b
am: fb80b4f72d Change-Id: Iba2da78981e4bd7a2b263b2f6b18ab6c176e5fc8
Diffstat (limited to 'verifier.cpp')
-rw-r--r--verifier.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/verifier.cpp b/verifier.cpp
index 61e5adf0..bf7071d1 100644
--- a/verifier.cpp
+++ b/verifier.cpp
@@ -144,6 +144,12 @@ int verify_file(unsigned char* addr, size_t length,
144 LOGI("comment is %zu bytes; signature %zu bytes from end\n", 144 LOGI("comment is %zu bytes; signature %zu bytes from end\n",
145 comment_size, signature_start); 145 comment_size, signature_start);
146 146
147 if (signature_start > comment_size) {
148 LOGE("signature start: %zu is larger than comment size: %zu\n", signature_start,
149 comment_size);
150 return VERIFY_FAILURE;
151 }
152
147 if (signature_start <= FOOTER_SIZE) { 153 if (signature_start <= FOOTER_SIZE) {
148 LOGE("Signature start is in the footer"); 154 LOGE("Signature start is in the footer");
149 return VERIFY_FAILURE; 155 return VERIFY_FAILURE;