Brad Bishop | d7bf8c1 | 2018-02-25 22:55:05 -0500 | [diff] [blame] | 1 | Upstream-Status: Backport [https://github.com/opencv/opencv/pull/9376/commits/78a310630fb0a1f6d089576202343e672f27609d] |
| 2 | |
| 3 | Fix CVEs for opencv 3.3. |
| 4 | |
| 5 | * CVE-2017-12597 |
| 6 | * CVE-2017-12598 |
| 7 | * CVE-2017-12599 |
| 8 | * CVE-2017-12600 |
| 9 | * CVE-2017-12601 |
| 10 | * CVE-2017-12602 |
| 11 | * CVE-2017-12603 |
| 12 | * CVE-2017-12604 |
| 13 | * CVE-2017-12605 |
| 14 | * CVE-2017-12606 |
| 15 | * CVE-2017-12862 |
| 16 | * CVE-2017-12863 |
| 17 | * CVE-2017-12864 |
| 18 | |
| 19 | Signed-off-by: Kai Kang <kai.kang@windriver.com> |
| 20 | --- |
| 21 | From 78a310630fb0a1f6d089576202343e672f27609d Mon Sep 17 00:00:00 2001 |
| 22 | From: Alexander Alekhin <alexander.alekhin@intel.com> |
| 23 | Date: Wed, 16 Aug 2017 13:53:12 +0300 |
| 24 | Subject: [PATCH 3/3] imgproc(test): add checks for remove() call |
| 25 | |
| 26 | --- |
| 27 | modules/imgcodecs/test/test_grfmt.cpp | 2 +- |
| 28 | modules/imgcodecs/test/test_jpeg.cpp | 12 ++++++------ |
| 29 | modules/imgcodecs/test/test_png.cpp | 2 +- |
| 30 | modules/imgcodecs/test/test_read_write.cpp | 4 ++-- |
| 31 | modules/imgcodecs/test/test_tiff.cpp | 8 ++++---- |
| 32 | modules/imgcodecs/test/test_webp.cpp | 6 +++--- |
| 33 | 6 files changed, 17 insertions(+), 17 deletions(-) |
| 34 | |
| 35 | diff --git a/modules/imgcodecs/test/test_grfmt.cpp b/modules/imgcodecs/test/test_grfmt.cpp |
| 36 | index 64a0c1e3a..74b72c3b3 100644 |
| 37 | --- a/modules/imgcodecs/test/test_grfmt.cpp |
| 38 | +++ b/modules/imgcodecs/test/test_grfmt.cpp |
| 39 | @@ -175,7 +175,7 @@ TEST_P(Imgcodecs_ExtSize, write_imageseq) |
| 40 | EXPECT_LT(n, 1.); |
| 41 | EXPECT_PRED_FORMAT2(cvtest::MatComparator(0, 0), img, img_gt); |
| 42 | } |
| 43 | - remove(filename.c_str()); |
| 44 | + EXPECT_EQ(0, remove(filename.c_str())); |
| 45 | } |
| 46 | } |
| 47 | |
| 48 | diff --git a/modules/imgcodecs/test/test_jpeg.cpp b/modules/imgcodecs/test/test_jpeg.cpp |
| 49 | index 5546f2d91..6ddb02840 100644 |
| 50 | --- a/modules/imgcodecs/test/test_jpeg.cpp |
| 51 | +++ b/modules/imgcodecs/test/test_jpeg.cpp |
| 52 | @@ -123,8 +123,8 @@ TEST(Imgcodecs_Jpeg, encode_decode_progressive_jpeg) |
| 53 | |
| 54 | EXPECT_EQ(0, cvtest::norm(img_jpg_progressive, img_jpg_normal, NORM_INF)); |
| 55 | |
| 56 | - remove(output_progressive.c_str()); |
| 57 | - remove(output_normal.c_str()); |
| 58 | + EXPECT_EQ(0, remove(output_progressive.c_str())); |
| 59 | + EXPECT_EQ(0, remove(output_normal.c_str())); |
| 60 | } |
| 61 | |
| 62 | TEST(Imgcodecs_Jpeg, encode_decode_optimize_jpeg) |
| 63 | @@ -148,8 +148,8 @@ TEST(Imgcodecs_Jpeg, encode_decode_optimize_jpeg) |
| 64 | |
| 65 | EXPECT_EQ(0, cvtest::norm(img_jpg_optimized, img_jpg_normal, NORM_INF)); |
| 66 | |
| 67 | - remove(output_optimized.c_str()); |
| 68 | - remove(output_normal.c_str()); |
| 69 | + EXPECT_EQ(0, remove(output_optimized.c_str())); |
| 70 | + EXPECT_EQ(0, remove(output_normal.c_str())); |
| 71 | } |
| 72 | |
| 73 | TEST(Imgcodecs_Jpeg, encode_decode_rst_jpeg) |
| 74 | @@ -173,8 +173,8 @@ TEST(Imgcodecs_Jpeg, encode_decode_rst_jpeg) |
| 75 | |
| 76 | EXPECT_EQ(0, cvtest::norm(img_jpg_rst, img_jpg_normal, NORM_INF)); |
| 77 | |
| 78 | - remove(output_rst.c_str()); |
| 79 | - remove(output_normal.c_str()); |
| 80 | + EXPECT_EQ(0, remove(output_rst.c_str())); |
| 81 | + EXPECT_EQ(0, remove(output_normal.c_str())); |
| 82 | } |
| 83 | |
| 84 | #endif // HAVE_JPEG |
| 85 | diff --git a/modules/imgcodecs/test/test_png.cpp b/modules/imgcodecs/test/test_png.cpp |
| 86 | index c46f90119..4e97043e1 100644 |
| 87 | --- a/modules/imgcodecs/test/test_png.cpp |
| 88 | +++ b/modules/imgcodecs/test/test_png.cpp |
| 89 | @@ -17,7 +17,7 @@ TEST(Imgcodecs_Png, write_big) |
| 90 | EXPECT_EQ(13043, img.cols); |
| 91 | EXPECT_EQ(13917, img.rows); |
| 92 | ASSERT_NO_THROW(imwrite(dst_file, img)); |
| 93 | - remove(dst_file.c_str()); |
| 94 | + EXPECT_EQ(0, remove(dst_file.c_str())); |
| 95 | } |
| 96 | |
| 97 | TEST(Imgcodecs_Png, encode) |
| 98 | diff --git a/modules/imgcodecs/test/test_read_write.cpp b/modules/imgcodecs/test/test_read_write.cpp |
| 99 | index 38f10225f..5119813bf 100644 |
| 100 | --- a/modules/imgcodecs/test/test_read_write.cpp |
| 101 | +++ b/modules/imgcodecs/test/test_read_write.cpp |
| 102 | @@ -50,7 +50,7 @@ TEST(Imgcodecs_Image, read_write_bmp) |
| 103 | psnr = cvtest::PSNR(buf_loaded, image); |
| 104 | EXPECT_GT(psnr, thresDbell); |
| 105 | |
| 106 | - remove(dst_name.c_str()); |
| 107 | + EXPECT_EQ(0, remove(dst_name.c_str())); |
| 108 | } |
| 109 | } |
| 110 | |
| 111 | @@ -95,7 +95,7 @@ TEST_P(Imgcodecs_Image, read_write) |
| 112 | psnr = cvtest::PSNR(buf_loaded, image); |
| 113 | EXPECT_GT(psnr, thresDbell); |
| 114 | |
| 115 | - remove(full_name.c_str()); |
| 116 | + EXPECT_EQ(0, remove(full_name.c_str())); |
| 117 | } |
| 118 | |
| 119 | const string exts[] = { |
| 120 | diff --git a/modules/imgcodecs/test/test_tiff.cpp b/modules/imgcodecs/test/test_tiff.cpp |
| 121 | index 0264da4cd..6ef0c1748 100644 |
| 122 | --- a/modules/imgcodecs/test/test_tiff.cpp |
| 123 | +++ b/modules/imgcodecs/test/test_tiff.cpp |
| 124 | @@ -41,8 +41,8 @@ TEST(Imgcodecs_Tiff, decode_tile16384x16384) |
| 125 | // not enough memory |
| 126 | } |
| 127 | |
| 128 | - remove(file3.c_str()); |
| 129 | - remove(file4.c_str()); |
| 130 | + EXPECT_EQ(0, remove(file3.c_str())); |
| 131 | + EXPECT_EQ(0, remove(file4.c_str())); |
| 132 | } |
| 133 | |
| 134 | TEST(Imgcodecs_Tiff, write_read_16bit_big_little_endian) |
| 135 | @@ -88,7 +88,7 @@ TEST(Imgcodecs_Tiff, write_read_16bit_big_little_endian) |
| 136 | EXPECT_EQ(0xDEAD, img.at<ushort>(0,0)); |
| 137 | EXPECT_EQ(0xBEEF, img.at<ushort>(0,1)); |
| 138 | |
| 139 | - remove(filename.c_str()); |
| 140 | + EXPECT_EQ(0, remove(filename.c_str())); |
| 141 | } |
| 142 | } |
| 143 | |
| 144 | @@ -143,7 +143,7 @@ TEST(Imgcodecs_Tiff, decode_infinite_rowsperstrip) |
| 145 | |
| 146 | EXPECT_NO_THROW(cv::imread(filename, IMREAD_UNCHANGED)); |
| 147 | |
| 148 | - remove(filename.c_str()); |
| 149 | + EXPECT_EQ(0, remove(filename.c_str())); |
| 150 | } |
| 151 | |
| 152 | //================================================================================================== |
| 153 | diff --git a/modules/imgcodecs/test/test_webp.cpp b/modules/imgcodecs/test/test_webp.cpp |
| 154 | index 6d40ce21e..d82fdd289 100644 |
| 155 | --- a/modules/imgcodecs/test/test_webp.cpp |
| 156 | +++ b/modules/imgcodecs/test/test_webp.cpp |
| 157 | @@ -44,7 +44,7 @@ TEST(Imgcodecs_WebP, encode_decode_lossless_webp) |
| 158 | } |
| 159 | } |
| 160 | |
| 161 | - remove(output.c_str()); |
| 162 | + EXPECT_EQ(0, remove(output.c_str())); |
| 163 | |
| 164 | cv::Mat decode = cv::imdecode(buf, IMREAD_COLOR); |
| 165 | ASSERT_FALSE(decode.empty()); |
| 166 | @@ -71,7 +71,7 @@ TEST(Imgcodecs_WebP, encode_decode_lossy_webp) |
| 167 | |
| 168 | EXPECT_NO_THROW(cv::imwrite(output, img, params)); |
| 169 | cv::Mat img_webp = cv::imread(output); |
| 170 | - remove(output.c_str()); |
| 171 | + EXPECT_EQ(0, remove(output.c_str())); |
| 172 | EXPECT_FALSE(img_webp.empty()); |
| 173 | EXPECT_EQ(3, img_webp.channels()); |
| 174 | EXPECT_EQ(512, img_webp.cols); |
| 175 | @@ -96,7 +96,7 @@ TEST(Imgcodecs_WebP, encode_decode_with_alpha_webp) |
| 176 | |
| 177 | EXPECT_NO_THROW(cv::imwrite(output, img)); |
| 178 | cv::Mat img_webp = cv::imread(output); |
| 179 | - remove(output.c_str()); |
| 180 | + EXPECT_EQ(0, remove(output.c_str())); |
| 181 | EXPECT_FALSE(img_webp.empty()); |
| 182 | EXPECT_EQ(4, img_webp.channels()); |
| 183 | EXPECT_EQ(512, img_webp.cols); |
| 184 | -- |
| 185 | 2.14.1 |
| 186 | |