]> granicus.if.org Git - imagemagick/commitdiff
add libpng to delegates
authorPaul Kehrer <paul.l.kehrer@gmail.com>
Sun, 8 Apr 2018 00:00:28 +0000 (08:00 +0800)
committerDirk Lemstra <dlemstra@users.noreply.github.com>
Sun, 8 Apr 2018 09:20:47 +0000 (11:20 +0200)
Magick++/fuzz/build.sh
Magick++/fuzz/encoder_fuzzer.cc

index 36735ea91fe67fa781b44fa29693235db72571c7..901e1ddceca37bc43a1ab3eb8c886040bd4cec52 100644 (file)
@@ -15,6 +15,12 @@ make -j$(nproc)
 make install
 popd
 
+pushd "$SRC/libpng"
+cmake . -DCMAKE_INSTALL_PREFIX=$WORK -DPNG_SHARED=off
+make -j$(nproc)
+make install
+popd
+
 # Build libtiff
 pushd "$SRC/libtiff"
 ./autogen.sh
@@ -79,7 +85,7 @@ MAGICK_COMPILER=$CXX
 MAGICK_COMPILER_FLAGS=$CXXFLAGS
 MAGICK_INCLUDE="$WORK/include/ImageMagick-7"
 MAGICK_SRC="$SRC/imagemagick/Magick++/fuzz"
-MAGICK_LIBS="-lFuzzingEngine $WORK/lib/libMagick++-7.Q16HDRI.a $WORK/lib/libMagickWand-7.Q16HDRI.a $WORK/lib/libMagickCore-7.Q16HDRI.a $WORK/lib/libz.a $WORK/lib/liblzma.a $WORK/lib/libtiff.a $WORK/lib/libde265.a $WORK/lib/libopenjp2.a $WORK/lib/libwebp.a $WORK/lib/libturbojpeg.a $WORK/lib/libjpeg.a $WORK/lib/libfreetype.a $WORK/lib/libraw.a"
+MAGICK_LIBS="-lFuzzingEngine $WORK/lib/libMagick++-7.Q16HDRI.a $WORK/lib/libMagickWand-7.Q16HDRI.a $WORK/lib/libMagickCore-7.Q16HDRI.a $WORK/lib/libz.a $WORK/lib/liblzma.a $WORK/lib/libpng.a $WORK/lib/libtiff.a $WORK/lib/libde265.a $WORK/lib/libopenjp2.a $WORK/lib/libwebp.a $WORK/lib/libturbojpeg.a $WORK/lib/libjpeg.a $WORK/lib/libfreetype.a $WORK/lib/libraw.a"
 MAGICK_OUTPUT=$OUT
 MAGICK_FAST_BUILD=0
 
index e6eaff450c5967ef1f11b5795d651e579b05448f..10aa17c012871c287d06483b06dbc4bca102e7f2 100644 (file)
@@ -35,6 +35,9 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) {
   const ssize_t offset = EncoderInitializer(Data, Size, image);
   if (offset < 0)
     return 0;
+  if (FUZZ_ENCODER == "PNG") {
+      SetImageOption(image.imageInfo(), "png:ignore-crc", "1");
+  }
   std::string encoder = FUZZ_ENCODER;
   image.magick(encoder);
   image.fileName(std::string(encoder) + ":");