2008-05-02 05:17:16 +00:00
|
|
|
# $FreeBSD$
|
|
|
|
|
2016-02-02 22:26:49 +00:00
|
|
|
PACKAGE= tests
|
|
|
|
|
2020-09-18 17:17:46 +00:00
|
|
|
WARNS?= 3
|
|
|
|
|
2015-12-01 22:20:04 +00:00
|
|
|
_LIBARCHIVEDIR= ${SRCTOP}/contrib/libarchive
|
2015-10-12 18:31:21 +00:00
|
|
|
|
|
|
|
ATF_TESTS_SH+= functional_test
|
|
|
|
|
|
|
|
BINDIR= ${TESTSDIR}
|
|
|
|
|
|
|
|
CFLAGS+= -DPLATFORM_CONFIG_H=\"${SRCTOP}/lib/libarchive/config_freebsd.h\"
|
|
|
|
CFLAGS+= -I${SRCTOP}/lib/libarchive -I${.OBJDIR}
|
2017-03-20 13:02:27 +00:00
|
|
|
CFLAGS+= -I${_LIBARCHIVEDIR}/libarchive
|
2017-03-02 22:59:35 +00:00
|
|
|
CFLAGS+= -I${_LIBARCHIVEDIR}/tar -I${_LIBARCHIVEDIR}/tar/test
|
|
|
|
CFLAGS+= -I${_LIBARCHIVEDIR}/test_utils
|
2015-10-12 18:31:21 +00:00
|
|
|
|
|
|
|
# Uncomment to link against dmalloc
|
|
|
|
#LDADD+= -L/usr/local/lib -ldmalloc
|
|
|
|
#CFLAGS+= -I/usr/local/include -DUSE_DMALLOC
|
|
|
|
|
|
|
|
PROGS+= bsdtar_test
|
2008-05-02 05:17:16 +00:00
|
|
|
|
2015-12-01 22:20:04 +00:00
|
|
|
.PATH: ${_LIBARCHIVEDIR}/tar/test
|
2015-10-12 18:31:21 +00:00
|
|
|
TESTS_SRCS= \
|
2008-05-02 05:17:16 +00:00
|
|
|
test_0.c \
|
|
|
|
test_basic.c \
|
|
|
|
test_copy.c \
|
2011-07-17 21:33:15 +00:00
|
|
|
test_empty_mtree.c \
|
2013-03-22 13:36:03 +00:00
|
|
|
test_extract_tar_bz2.c \
|
|
|
|
test_extract_tar_grz.c \
|
|
|
|
test_extract_tar_gz.c \
|
|
|
|
test_extract_tar_lrz.c \
|
|
|
|
test_extract_tar_lz.c \
|
2016-05-12 10:16:16 +00:00
|
|
|
test_extract_tar_lz4.c \
|
2013-03-22 13:36:03 +00:00
|
|
|
test_extract_tar_lzma.c \
|
|
|
|
test_extract_tar_lzo.c \
|
|
|
|
test_extract_tar_xz.c \
|
2017-10-01 00:40:23 +00:00
|
|
|
test_extract_tar_zstd.c \
|
2012-07-28 06:38:44 +00:00
|
|
|
test_format_newc.c \
|
2008-05-02 05:17:16 +00:00
|
|
|
test_help.c \
|
2016-05-12 10:16:16 +00:00
|
|
|
test_leading_slash.c \
|
MFV r302003,r302037,r302038,r302056:
Update libarchive to 3.2.1 (bugfix and security fix release)
List of vendor fixes:
- fix exploitable heap overflow vulnerability in Rar decompression
(vendor issue 719, CVE-2016-4302, TALOS-2016-0154)
- fix exploitable stack based buffer overflow vulnebarility in mtree
parse_device functionality (vendor PR 715, CVE-2016-4301, TALOS-2016-0153)
- fix exploitable heap overflow vulnerability in 7-zip read_SubStreamsInfo
(vendor issue 718, CVE-2016-4300, TALOS-2016-152)
- fix integer overflow when computing location of volume descriptor
(vendor issue 717)
- fix buffer overflow when reading a crafred rar archive (vendor issue 521)
- fix possible buffer overflow when reading ISO9660 archives on machines
where sizeof(int) < sizeof(size_t) (vendor issue 711)
- tar and cpio should fail if an input file named on the command line is
missing (vendor issue 708)
- fix incorrect writing of gnutar filenames that are exactly 512 bytes
long (vendor issue 682)
- allow tests to be run from paths that are equal or longer than 128
characters (vendor issue 657)
- add memory allocation errors in archive_entry_xattr.c (vendor PR 603)
- remove dead code in archive_entry_xattr_add_entry() (vendor PR 716)
- fix broken decryption of ZIP files (vendor issue 553)
- manpage style, typo and description fixes
Post-3.2.1 vendor fixes:
- fix typo in cpio version reporting (Vendor PR 725, 726)
- fix argument range of ctype functions in libarchive_fe/passphrase.c
- fix ctype use and avoid empty loop bodies in WARC reader
MFC after: 1 week
Security: CVE-2016-4300, CVE-2016-4301, CVE-2016-4302
Approved by: re (kib)
2016-06-22 07:49:59 +00:00
|
|
|
test_missing_file.c \
|
2018-07-29 00:12:16 +00:00
|
|
|
test_option_C_mtree.c \
|
2012-02-25 10:58:02 +00:00
|
|
|
test_option_C_upper.c \
|
|
|
|
test_option_H_upper.c \
|
|
|
|
test_option_L_upper.c \
|
|
|
|
test_option_O_upper.c \
|
2011-07-17 21:33:15 +00:00
|
|
|
test_option_T_upper.c \
|
2012-02-25 10:58:02 +00:00
|
|
|
test_option_U_upper.c \
|
|
|
|
test_option_X_upper.c \
|
2013-03-22 13:36:03 +00:00
|
|
|
test_option_a.c \
|
2017-03-02 22:59:35 +00:00
|
|
|
test_option_acls.c \
|
2012-02-25 10:58:02 +00:00
|
|
|
test_option_b.c \
|
2013-03-22 13:36:03 +00:00
|
|
|
test_option_b64encode.c \
|
2012-02-25 10:58:02 +00:00
|
|
|
test_option_exclude.c \
|
MFV r347989:
Sync libarchive with vendor.
Relevant vendor changes:
Issue #795: XAR - do not try to add xattrs without an allocated name
PR #812: non-recursive option for extract and list
PR #958: support reading metadata from compressed files
PR #999: add --exclude-vcs option to bsdtar
Issue #1062: treat empty archives with a GNU volume header as valid
PR #1074: Handle ZIP files with trailing 0s in the extra fields
(Android APK archives)
PR #1109: Ignore padding in Zip extra field data (Android APK archives)
PR #1167: fix problems related to unreadable directories
Issue #1168: fix handling of strtol() and strtoul()
PR #1172: RAR5 - fix invalid window buffer read in E8E9 filter
PR #1174: ZIP reader - fix of MSZIP signature parsing
PR #1175: gzip filter - fix reading files larger than 4GB from memory
PR #1177: gzip filter - fix memory leak with repeated header reads
PR #1180: ZIP reader - add support for Info-ZIP Unicode Path Extra Field
PR #1181: RAR5 - fix merge_block() recursion
(OSS-Fuzz 12999, 13029, 13144, 13478, 13490)
PR #1183: fix memory leak when decompressing ZIP files with LZMA
PR #1184: fix RAR5 OSS-Fuzz issues 12466, 14490, 14491, 12817
OSS-Fuzz 12466: RAR5 - fix buffer overflow when parsing huffman tables
OSS-Fuzz 14490, 14491: RAR5 - fix bad shift-left operations
OSS-Fuzz 12817: RAR5 - handle a case with truncated huffman tables
PR #1186: RAR5 - fix invalid type used for dictionary size mask
(OSS-Fuzz 14537)
PR #1187: RAR5 - fix integer overflow (OSS-Fuzz 14555)
PR #1190: RAR5 - RAR5 don't try to unpack entries marked as directories
(OSS-Fuzz 14574)
PR #1196: RAR5 - fix a potential SIGSEGV on 32-bit builds
OSS-Fuzz 2582: RAR - fix use after free if there is an invalid entry
OSS-Fuzz 14331: RAR5 - fix maximum owner name length
OSS-Fuzz 13965: RAR5 - use unsigned int for volume number + range check
Additional RAR5 reader changes:
- support symlinks, hardlinks, file owner, file group, versioned files
- change ARCHIVE_FORMAT_RAR_V5 to 0x100000
- set correct mode for readonly directories
- support readonly, hidden and system Windows file attributes
MFC after: 2 weeks
2019-05-20 12:57:39 +00:00
|
|
|
test_option_exclude_vcs.c \
|
2017-03-02 22:59:35 +00:00
|
|
|
test_option_fflags.c \
|
2012-02-25 10:58:02 +00:00
|
|
|
test_option_gid_gname.c \
|
2013-03-22 13:36:03 +00:00
|
|
|
test_option_grzip.c \
|
|
|
|
test_option_j.c \
|
2012-02-25 10:58:02 +00:00
|
|
|
test_option_k.c \
|
|
|
|
test_option_keep_newer_files.c \
|
2013-03-22 13:36:03 +00:00
|
|
|
test_option_lrzip.c \
|
2016-05-12 10:16:16 +00:00
|
|
|
test_option_lz4.c \
|
2013-03-22 13:36:03 +00:00
|
|
|
test_option_lzma.c \
|
|
|
|
test_option_lzop.c \
|
2012-02-25 10:58:02 +00:00
|
|
|
test_option_n.c \
|
|
|
|
test_option_newer_than.c \
|
2013-03-22 13:36:03 +00:00
|
|
|
test_option_nodump.c \
|
|
|
|
test_option_older_than.c \
|
2016-05-12 10:16:16 +00:00
|
|
|
test_option_passphrase.c \
|
2008-08-22 01:22:55 +00:00
|
|
|
test_option_q.c \
|
2011-07-17 21:33:15 +00:00
|
|
|
test_option_r.c \
|
2009-03-08 05:17:58 +00:00
|
|
|
test_option_s.c \
|
2020-02-12 00:16:56 +00:00
|
|
|
test_option_safe_writes.c \
|
2012-02-25 10:58:02 +00:00
|
|
|
test_option_uid_uname.c \
|
2013-03-22 13:36:03 +00:00
|
|
|
test_option_uuencode.c \
|
2017-03-24 00:02:12 +00:00
|
|
|
test_option_xattrs.c \
|
2013-03-22 13:36:03 +00:00
|
|
|
test_option_xz.c \
|
|
|
|
test_option_z.c \
|
2017-10-01 00:40:23 +00:00
|
|
|
test_option_zstd.c \
|
2008-05-26 17:10:10 +00:00
|
|
|
test_patterns.c \
|
2012-02-25 10:58:02 +00:00
|
|
|
test_print_longpath.c \
|
2008-05-02 05:17:16 +00:00
|
|
|
test_stdio.c \
|
2008-11-10 05:04:55 +00:00
|
|
|
test_strip_components.c \
|
2008-09-14 02:16:04 +00:00
|
|
|
test_symlink_dir.c \
|
2008-05-02 05:17:16 +00:00
|
|
|
test_version.c
|
|
|
|
|
2015-10-12 18:31:21 +00:00
|
|
|
SRCS.bsdtar_test= \
|
|
|
|
${TESTS_SRCS} \
|
2017-03-02 22:59:35 +00:00
|
|
|
list.h
|
2008-05-02 05:17:16 +00:00
|
|
|
|
2015-12-01 22:20:04 +00:00
|
|
|
.PATH: ${_LIBARCHIVEDIR}/test_utils
|
2017-03-02 22:59:35 +00:00
|
|
|
SRCS.bsdtar_test+= test_main.c \
|
|
|
|
test_utils.c
|
2008-05-02 05:17:16 +00:00
|
|
|
|
2015-10-12 18:31:21 +00:00
|
|
|
LIBADD.bsdtar_test= archive
|
2008-05-02 05:17:16 +00:00
|
|
|
|
2015-10-12 18:31:21 +00:00
|
|
|
list.h: ${TESTS_SRCS} Makefile
|
2015-12-01 22:20:04 +00:00
|
|
|
@(cd ${_LIBARCHIVEDIR}/tar/test && \
|
2015-10-12 18:31:21 +00:00
|
|
|
grep -h DEFINE_TEST ${.ALLSRC:N*Makefile}) > ${.TARGET}.tmp
|
|
|
|
@mv ${.TARGET}.tmp ${.TARGET}
|
2008-05-02 05:17:16 +00:00
|
|
|
|
2015-10-12 18:31:21 +00:00
|
|
|
CLEANFILES+= list.h list.h.tmp
|
2008-05-02 05:17:16 +00:00
|
|
|
|
2016-05-04 23:20:53 +00:00
|
|
|
${PACKAGE}FILES+= test_extract.tar.Z.uu
|
|
|
|
${PACKAGE}FILES+= test_extract.tar.bz2.uu
|
|
|
|
${PACKAGE}FILES+= test_extract.tar.grz.uu
|
|
|
|
${PACKAGE}FILES+= test_extract.tar.gz.uu
|
|
|
|
${PACKAGE}FILES+= test_extract.tar.lrz.uu
|
|
|
|
${PACKAGE}FILES+= test_extract.tar.lz.uu
|
2016-05-12 10:16:16 +00:00
|
|
|
${PACKAGE}FILES+= test_extract.tar.lz4.uu
|
2016-05-04 23:20:53 +00:00
|
|
|
${PACKAGE}FILES+= test_extract.tar.lzma.uu
|
|
|
|
${PACKAGE}FILES+= test_extract.tar.lzo.uu
|
|
|
|
${PACKAGE}FILES+= test_extract.tar.xz.uu
|
2017-10-01 00:40:23 +00:00
|
|
|
${PACKAGE}FILES+= test_extract.tar.zst.uu
|
2016-05-12 10:16:16 +00:00
|
|
|
${PACKAGE}FILES+= test_leading_slash.tar.uu
|
2016-05-04 23:20:53 +00:00
|
|
|
${PACKAGE}FILES+= test_option_keep_newer_files.tar.Z.uu
|
2016-05-12 10:16:16 +00:00
|
|
|
${PACKAGE}FILES+= test_option_passphrase.zip.uu
|
2016-05-04 23:20:53 +00:00
|
|
|
${PACKAGE}FILES+= test_option_s.tar.Z.uu
|
|
|
|
${PACKAGE}FILES+= test_patterns_2.tar.uu
|
|
|
|
${PACKAGE}FILES+= test_patterns_3.tar.uu
|
|
|
|
${PACKAGE}FILES+= test_patterns_4.tar.uu
|
|
|
|
${PACKAGE}FILES+= test_print_longpath.tar.Z.uu
|
2008-05-02 05:17:16 +00:00
|
|
|
|
2015-10-12 18:31:21 +00:00
|
|
|
.include <bsd.test.mk>
|