Add support to fastboot_driver for sending sparse images with CRC check

The default argument will prevent anything from breaking

Test: Build on glinux
Change-Id: Ib427ab210476db1ec1c69c0a3238d0653e98b79a
This commit is contained in:
Aaron Wisner 2018-08-22 11:01:04 -05:00
parent 3b984c7efe
commit 9812b58fc4
2 changed files with 4 additions and 4 deletions

View file

@ -220,10 +220,10 @@ RetCode FastBootDriver::Download(const char* buf, uint32_t size, std::string* re
return HandleResponse(response, info);
}
RetCode FastBootDriver::Download(sparse_file* s, std::string* response,
RetCode FastBootDriver::Download(sparse_file* s, bool use_crc, std::string* response,
std::vector<std::string>* info) {
error_ = "";
int64_t size = sparse_file_len(s, true, false);
int64_t size = sparse_file_len(s, true, use_crc);
if (size <= 0 || size > MAX_DOWNLOAD_SIZE) {
error_ = "Sparse file is too large or invalid";
return BAD_ARG;
@ -247,7 +247,7 @@ RetCode FastBootDriver::Download(sparse_file* s, std::string* response,
return data->self->SparseWriteCallback(data->tpbuf, cbuf, len);
};
if (sparse_file_callback(s, true, false, cb, &cb_priv) < 0) {
if (sparse_file_callback(s, true, use_crc, cb, &cb_priv) < 0) {
error_ = "Error reading sparse file";
return IO_ERROR;
}

View file

@ -74,7 +74,7 @@ class FastBootDriver {
// This will be removed after fastboot is modified to use a vector
RetCode Download(const char* buf, uint32_t size, std::string* response = nullptr,
std::vector<std::string>* info = nullptr);
RetCode Download(sparse_file* s, std::string* response = nullptr,
RetCode Download(sparse_file* s, bool use_crc = false, std::string* response = nullptr,
std::vector<std::string>* info = nullptr);
RetCode Erase(const std::string& part, std::string* response = nullptr,
std::vector<std::string>* info = nullptr);