return S_SS_SUCCESS;
}
+ LOGL(LOG_SSENGINE, "SS_UpdateDeltaIMGAB - Checksum calculation of the source partition\n");
SS_CalculateFileSha(ua_dataSS->parti_info->ua_blk_name_previous,
ua_dataSS->update_cfg->soure_img_size,
current_target_sha1);
return E_SS_FAILURE;
}
+ LOGL(LOG_SSENGINE, "SS_UpdateDeltaIMGAB - Applying the patch\n");
apply_patch_brotli(ua_dataSS->parti_info->ua_blk_name_previous,
ua_dataSS->update_cfg->soure_img_size,
ua_dataSS->parti_info->ua_blk_name,
ua_dataSS->update_cfg->target_img_size,
SS_PATCHFILE_SOURCE);
+ LOGL(LOG_SSENGINE, "SS_UpdateDeltaIMGAB - Checksum calculation of the target partition\n");
+ SS_CalculateFileSha(ua_dataSS->parti_info->ua_blk_name,
+ ua_dataSS->update_cfg->target_img_size,
+ current_target_sha1);
+
+ if (memcmp(target_sha1, current_target_sha1, SHA_DIGEST_SIZE) != 0) {
+ unsigned char actualShaBuffer[41] = { 0, };
+ hex_digest(current_target_sha1, actualShaBuffer, SHA_DIGEST_SIZE);
+ LOGL(LOG_SSENGINE, "SS_UpdateDeltaIMGAB - Target partition was corrupted. SRC: [%s] Expected [%s] Actual [%s]\n",
+ ua_dataSS->parti_info->ua_blk_name, ua_dataSS->update_cfg->target_sha1, actualShaBuffer);
+ return E_SS_FAILURE;
+ }
+
return result;
}