Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 56843eec authored by David Anderson's avatar David Anderson
Browse files

fastbootd: Perform CRC check when flashing sparse images.

Bug: 78793464
Test: fuzzy_fastboot Conformance.SparseCRCCheck passes
Change-Id: I717fbec42599a43bafafa1f73837e115a9f9109a
parent 28b81cdc
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -72,7 +72,7 @@ int WriteCallback(void* priv, const void* data, size_t len) {
}

int FlashSparseData(int fd, std::vector<char>& downloaded_data) {
    struct sparse_file* file = sparse_file_import_buf(downloaded_data.data(), true, false);
    struct sparse_file* file = sparse_file_import_buf(downloaded_data.data(), true, true);
    if (!file) {
        return -ENOENT;
    }
+0 −1
Original line number Diff line number Diff line
@@ -570,7 +570,6 @@ TEST_F(Conformance, SparseCRCCheck) {
    buf.back() = buf.back() ^ 0x01;
    ASSERT_EQ(DownloadCommand(buf.size()), SUCCESS) << "Device rejected download command";
    ASSERT_EQ(SendBuffer(buf), SUCCESS) << "Downloading payload failed";
    printf("%02x\n", (unsigned char)buf.back());
    // It can either reject this download or reject it during flash
    if (HandleResponse() != DEVICE_FAIL) {
        EXPECT_EQ(fb->Flash("userdata"), DEVICE_FAIL)