ARCHIVE_ERRNO_FILE_FORMAT,
"Unsupported filter type: 0x%x",
(unsigned int)flt->type);
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
if(ret != ARCHIVE_OK) {
archive_set_error(&a->archive,
ARCHIVE_ERRNO_FILE_FORMAT,
"Truncated data in huffman tables");
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
value = (p[i] & nibble_mask) >> nibble_shift;
if(ret != ARCHIVE_OK) {
archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT,
"Decoding huffman tables failed");
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
for(i = 0; i < HUFF_TABLE_SIZE;) {
archive_set_error(&a->archive,
ARCHIVE_ERRNO_FILE_FORMAT,
"Decoding huffman tables failed");
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
if(num < 16) {
ARCHIVE_ERRNO_FILE_FORMAT,
"Unexpected error when decoding "
"huffman tables");
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
} else {
/* other codes: fill with zeroes `n` times */
if(ret != ARCHIVE_OK) {
archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT,
"Failed to create literal table");
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
idx += HUFF_NC;
if(ret != ARCHIVE_OK) {
archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT,
"Failed to create distance table");
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
idx += HUFF_DC;
if(ret != ARCHIVE_OK) {
archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT,
"Failed to create lower bits of distances table");
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
idx += HUFF_LDC;
if(ret != ARCHIVE_OK) {
archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT,
"Failed to create repeating distances table");
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
return ARCHIVE_OK;
archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT,
"Unsupported block header size (was %d, max is 2)",
bf_byte_count(hdr));
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
/* This should probably use bit reader interface in order to be more
"Block checksum error: got 0x%x, expected 0x%x",
hdr->block_cksum, calculated_cksum);
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
#endif
}
ARCHIVE_ERRNO_PROGRAMMER,
"Failed to decode the code length");
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
if(ARCHIVE_OK != decode_number(a, &rar->cstate.dd, p,
ARCHIVE_ERRNO_PROGRAMMER,
"Failed to decode the distance slot");
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
if(dist_slot < 4) {
"Failed to decode the "
"distance slot");
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
if(dist >= INT_MAX - low_dist - 1) {
ARCHIVE_ERRNO_FILE_FORMAT,
"Distance pointer "
"overflow");
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
dist += low_dist;
if(ARCHIVE_OK != decode_number(a, &rar->cstate.rd, p,
&len_slot)) {
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
len = decode_code_length(a, rar, p, len_slot);
if (len == -1) {
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
rar->cstate.last_len = len;
archive_set_error(&a->archive,
ARCHIVE_ERRNO_FILE_FORMAT,
"Encountered block size == 0 during block merge");
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
if(!read_ahead(a, cur_block_size, &lp))
"Invalid window size declaration in this file");
/* This should never happen in valid files. */
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
}
if(rar->cstate.all_filters_applied == 1) {
archive_set_error(&a->archive,
ARCHIVE_ERRNO_FILE_FORMAT,
"Checksum error: CRC32");
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
#endif
} else {
DEBUG_CODE {
ARCHIVE_ERRNO_FILE_FORMAT,
"Checksum error: BLAKE2");
- return ARCHIVE_FATAL;
+ return ARCHIVE_FAILED;
#endif
}
}