From 4ff4cbdd6c8199e13c86bf4674b7863e1394dee5 Mon Sep 17 00:00:00 2001 From: David Anderson Date: Mon, 4 Nov 2019 13:09:38 -0800 Subject: bootloader_message: Carve out space reserved for system. This reduces the wipe space from 32K to 16K. The wipe space is now at the 16K-32K region. The 32K-64K region is now "system space", to complement the vendor space, for generic AOSP usage. Bug: 139156011 Test: manual test Change-Id: I1474bfa65a5f21049ab64ec0aee2f4585b55f60f --- bootloader_message/bootloader_message.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'bootloader_message/bootloader_message.cpp') 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); } -- cgit v1.2.3