From e5f792cf12cd246fbf7d9f54e6675738d7c5ccd5 Mon Sep 17 00:00:00 2001 From: Binh-Minh Ribler Date: Tue, 27 Oct 2020 22:18:52 -0500 Subject: Added test for the fix HDFFV-10590 --- tools/test/h5repack/h5repack.sh.in | 32 +++++++++++++++++++++ .../testfiles/HDFFV-10590_CVE-2018-17432.h5 | Bin 0 -> 7648 bytes 2 files changed, 32 insertions(+) create mode 100644 tools/test/h5repack/testfiles/HDFFV-10590_CVE-2018-17432.h5 diff --git a/tools/test/h5repack/h5repack.sh.in b/tools/test/h5repack/h5repack.sh.in index a95a22e..a3676af 100644 --- a/tools/test/h5repack/h5repack.sh.in +++ b/tools/test/h5repack/h5repack.sh.in @@ -865,6 +865,34 @@ TOOLTESTV() rm -f $outfile } +# Same as TOOLTEST, but expects h5repack fails +# +TOOLTEST_FAIL() +{ + infile=$1 + outfile=$2 + expect="$TESTDIR/$2-$1.ddl" + actual="$TESTDIR/$2-$1.out" + actual_err="$TESTDIR/$2-$1.err" + shift + shift + + # Run test. + TESTING $H5REPACK $@ + ( + cd $TESTDIR + $ENVCMD $RUNSERIAL $H5REPACK_BIN "$@" $infile $outfile + ) >$actual + RET=$? + if [ $RET == 0 ] ; then + nerrors="`expr $nerrors + 1`" + echo " FAILED" + else + echo " PASSED" + fi + rm -f $outfile +} + # This is same as TOOLTESTV() with comparing display output # with actual filename swapped # @@ -1681,6 +1709,10 @@ TOOLTEST HDFFV-5932 h5repack_attr_refs.h5 # Note: this test is experimental for sharing test file among tools TOOLTEST HDFFV-7840 h5diff_attr1.h5 +# test HDFFV-10590 +arg="HDFFV-10590_CVE-2018-17432.h5 HDFFV-10590_CVE-2018-17432_out.h5 --low=1 --high=2 -f GZIP=8 -l dset1:CHUNK=5x6" +TOOLTEST_FAIL $arg + # tests for metadata block size option TOOLTEST_META meta_short h5repack_layout.h5 -M 8192 TOOLTEST_META meta_long h5repack_layout.h5 --metadata_block_size=8192 diff --git a/tools/test/h5repack/testfiles/HDFFV-10590_CVE-2018-17432.h5 b/tools/test/h5repack/testfiles/HDFFV-10590_CVE-2018-17432.h5 new file mode 100644 index 0000000..7a815ba Binary files /dev/null and b/tools/test/h5repack/testfiles/HDFFV-10590_CVE-2018-17432.h5 differ -- cgit v0.12