file_num = atoi(tok_buf);
//adjust offset to start of data section before proceeding
- fseek(fp, SS_KERNEL_DELTA_HEADER, SEEK_SET);
+ ret = fseek(fp, SS_KERNEL_DELTA_HEADER, SEEK_SET);
+ if (ret != 0) {
+ LOGE("fseek is failed : errno[%d]\n", ret);
+ result = E_SS_FAILURE;
+ goto Cleanup;
+ }
while (file_num-- > 0) {
file_name = strtok_r(NULL, ":", &saveptr);
LOGL(LOG_SSENGINE, "short read of \"%s\" (%ld bytes of %ld)\n", SS_PATCHFILE_SOURCE, (long)bytes_read, (long)13);
fclose(fp);
- if (strcmp(buf, SS_KERNEL_MAGIC) == 0)
+ if (strncmp(buf, SS_KERNEL_MAGIC, sizeof(buf) / sizeof(char)) == 0)
ulResult = SS_UpdateDeltaKernel(ua_dataSS, ua_dataSS->write_data_to_blkdev);
else
ulResult = SS_UpdateDeltaIMG(ua_dataSS, ua_dataSS->write_data_to_blkdev);
}
/* check if the file is what we are looking for */
- if (strcmp(uExtendedName, item) == 0) {
+ if (strncmp(uExtendedName, item, sizeof(uExtendedName) / sizeof(char)) == 0) {
ret = (int)size_dec;
if ((ret == 0) && (header[TAR_ITEM_TYPE_FLAG_POS] == DIRTYPE))
ret = tar_get_folder_size(tar, item);