diff options
author | Martin Matuska <mm@FreeBSD.org> | 2020-12-01 10:36:46 +0000 |
---|---|---|
committer | Martin Matuska <mm@FreeBSD.org> | 2020-12-01 10:36:46 +0000 |
commit | d5f2a5ff11474589cccacfc8e153d437f48530e2 (patch) | |
tree | aeb7e201bfb2d629755c396db8001e39d116e852 /libarchive/archive_read_support_format_by_code.c | |
parent | 4dd2ae60c22045bc4e4f53a0cf45028322168ec0 (diff) | |
download | src-test2-vendor/libarchive/3.5.0.tar.gz src-test2-vendor/libarchive/3.5.0.zip |
Update vendor/libarchive/dist to git 833821f55b1807cac22a63a58b759a7802df2fb7vendor/libarchive/3.5.0
Libarchive 3.5.0
Relevant vendor changes:
Issue #1258: add archive_read_support_filter_by_code()
PR #1347: mtree digest reader support
Issue #1381: skip hardlinks pointing to itself on extraction
PR #1387: fix writing of cpio archives with hardlinks without file type
PR #1388: fix rdev field in cpio format for device nodes
PR #1389: completed support for UTF-8 encoding conversion
PR #1405: more formats in archive_read_support_format_by_code()
PR #1408: fix uninitialized size in rar5_read_data
PR #1409: system extended attribute support
PR #1435: support for decompression of symbolic links in zipx archives
Issue #1456: memory leak after unsuccessful archive_write_open_filename
Diffstat (limited to 'libarchive/archive_read_support_format_by_code.c')
-rw-r--r-- | libarchive/archive_read_support_format_by_code.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/libarchive/archive_read_support_format_by_code.c b/libarchive/archive_read_support_format_by_code.c index 034353d78f63..89e96f1f591f 100644 --- a/libarchive/archive_read_support_format_by_code.c +++ b/libarchive/archive_read_support_format_by_code.c @@ -26,6 +26,10 @@ #include "archive_platform.h" __FBSDID("$FreeBSD$"); +#ifdef HAVE_ERRNO_H +#include <errno.h> +#endif + #include "archive.h" #include "archive_private.h" @@ -48,6 +52,9 @@ archive_read_support_format_by_code(struct archive *a, int format_code) case ARCHIVE_FORMAT_CPIO: return archive_read_support_format_cpio(a); break; + case ARCHIVE_FORMAT_EMPTY: + return archive_read_support_format_empty(a); + break; case ARCHIVE_FORMAT_ISO9660: return archive_read_support_format_iso9660(a); break; @@ -63,9 +70,15 @@ archive_read_support_format_by_code(struct archive *a, int format_code) case ARCHIVE_FORMAT_RAR_V5: return archive_read_support_format_rar5(a); break; + case ARCHIVE_FORMAT_RAW: + return archive_read_support_format_raw(a); + break; case ARCHIVE_FORMAT_TAR: return archive_read_support_format_tar(a); break; + case ARCHIVE_FORMAT_WARC: + return archive_read_support_format_warc(a); + break; case ARCHIVE_FORMAT_XAR: return archive_read_support_format_xar(a); break; @@ -73,5 +86,7 @@ archive_read_support_format_by_code(struct archive *a, int format_code) return archive_read_support_format_zip(a); break; } + archive_set_error(a, ARCHIVE_ERRNO_PROGRAMMER, + "Invalid format code specified"); return (ARCHIVE_FATAL); } |