summaryrefslogtreecommitdiffstats
path: root/bootloader_message/bootloader_message.cpp
diff options
context:
space:
mode:
authorDavid Anderson <dvander@google.com>2019-11-04 22:09:38 +0100
committerDavid Anderson <dvander@google.com>2019-11-05 00:57:04 +0100
commit4ff4cbdd6c8199e13c86bf4674b7863e1394dee5 (patch)
tree35003fabd80d6328247081e010b8b10baf3ca25f /bootloader_message/bootloader_message.cpp
parentMerge Coral/Flame into AOSP master (diff)
downloadandroid_bootable_recovery-4ff4cbdd6c8199e13c86bf4674b7863e1394dee5.tar
android_bootable_recovery-4ff4cbdd6c8199e13c86bf4674b7863e1394dee5.tar.gz
android_bootable_recovery-4ff4cbdd6c8199e13c86bf4674b7863e1394dee5.tar.bz2
android_bootable_recovery-4ff4cbdd6c8199e13c86bf4674b7863e1394dee5.tar.lz
android_bootable_recovery-4ff4cbdd6c8199e13c86bf4674b7863e1394dee5.tar.xz
android_bootable_recovery-4ff4cbdd6c8199e13c86bf4674b7863e1394dee5.tar.zst
android_bootable_recovery-4ff4cbdd6c8199e13c86bf4674b7863e1394dee5.zip
Diffstat (limited to 'bootloader_message/bootloader_message.cpp')
-rw-r--r--bootloader_message/bootloader_message.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/bootloader_message/bootloader_message.cpp b/bootloader_message/bootloader_message.cpp
index b15a9b9fd..f838930fd 100644
--- a/bootloader_message/bootloader_message.cpp
+++ b/bootloader_message/bootloader_message.cpp
@@ -250,6 +250,13 @@ bool write_wipe_package(const std::string& package_data, std::string* err) {
if (misc_blk_device.empty()) {
return false;
}
+ static constexpr size_t kMaximumWipePackageSize =
+ SYSTEM_SPACE_OFFSET_IN_MISC - WIPE_PACKAGE_OFFSET_IN_MISC;
+ if (package_data.size() > kMaximumWipePackageSize) {
+ *err = "Wipe package size " + std::to_string(package_data.size()) + " exceeds " +
+ std::to_string(kMaximumWipePackageSize) + " bytes";
+ return false;
+ }
return write_misc_partition(package_data.data(), package_data.size(), misc_blk_device,
WIPE_PACKAGE_OFFSET_IN_MISC, err);
}