oss-fuzz/projects/libwebp/Dockerfile

33 lines
1.3 KiB
Docker
Raw Normal View History

2018-05-29 16:48:50 +00:00
# Copyright 2018 Google Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
################################################################################
FROM gcr.io/oss-fuzz-base/base-builder
RUN apt-get update && apt-get install -y autoconf make libtool zip
2018-05-29 16:48:50 +00:00
RUN git clone https://chromium.googlesource.com/webm/libwebp
RUN git clone https://chromium.googlesource.com/webm/libwebp-test-data
ADD https://storage.googleapis.com/downloads.webmproject.org/webp/testdata/fuzzer/fuzz_seed_corpus.zip $SRC/
RUN unzip fuzz_seed_corpus.zip -d libwebp-test-data/
RUN rm fuzz_seed_corpus.zip
COPY build.sh fuzz.h fuzz.dict $SRC/
COPY img_alpha.h img_grid.h img_peak.h $SRC/
COPY fuzz_simple_api.c $SRC/
COPY fuzz_advanced_api.c $SRC/
COPY fuzz_animation_api.c $SRC/
webp_animencoder: Add target to fuzz animation encoding (#1935) * Add new fuzz target for encoding and misc - Add fuzz_webp_enc_dec and adapt Dockerfile, build.sh - Lint existing targets - Add license headers - Increase fuzz.dict * webp_enc_dec: Convert input images to inline C arrays Local files are not available on oss-fuzz servers. * webp_enc_dec: Fix timeout by skipping crusher The target fuzz_webp_enc_dec with msan crashes (timeout) on a 128*128px image encoding with max compression (crusher). Reduce crusher encoding to 16*16px and below. Bug report 10423 * webp_enc_dec: Replace cruncher by lossy alpha encoding The target fuzz_webp_enc_dec with msan crashes (timeout) during encoding with max compression (cruncher). Reduce alpha cruncher encoding to 16*16px and below. Bug report 10634 * webp_enc_dec: Clamp slow parameters for big images The target fuzz_webp_enc_dec with ubsan crashes (timeout) during encoding with heavy compression. The cause can not be easily removed without reducing performance. Clamp compression parameters for images bigger than 16*16. Bug report 10700 * webp_enc_dec: Limit alpha_quality to 99 when method is 6 The target fuzz_webp_enc_dec with asan crashes (timeout) during encoding with heavy alpha compression. Clamp alpha compression parameters for images bigger than 16*16. Bug report 10838 * webp_animencoder: Add target to fuzz animation encoding Add fuzz_webp_animencoder.cc and modify Dockerfile, build.sh accordingly. The thresholds for input size and encoding parameters are low to prevent timeouts. Some functions used by fuzz_webp_animencoder and fuzz_webp_enc_dec have been moved to fuzz.h.
2018-11-07 19:17:08 +00:00
COPY fuzz_webp_animencoder.cc $SRC/
COPY fuzz_demux_api.c $SRC/
COPY fuzz_webp_enc_dec.cc $SRC/
2018-05-29 16:48:50 +00:00
WORKDIR libwebp