xz: Add the xz/lzma decompressor to oss-fuzz (#1919)

This commit is contained in:
Bhargava Shastry 2018-11-03 00:51:39 +01:00 committed by jonathanmetzman
parent 5cca3a6d07
commit eb52530096
3 changed files with 63 additions and 0 deletions

22
projects/xz/Dockerfile Normal file
View File

@ -0,0 +1,22 @@
# 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
MAINTAINER bshas3@email.com
RUN apt-get update && apt-get install -y make autoconf autopoint libtool zip
RUN git clone https://git.tukaani.org/xz.git
COPY build.sh $SRC/
WORKDIR xz

33
projects/xz/build.sh Executable file
View File

@ -0,0 +1,33 @@
#!/bin/bash -eu
# 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.
#
################################################################################
./autogen.sh
./configure \
--enable-static \
--disable-debug \
--disable-shared \
--disable-encoders \
--disable-xz \
--disable-xzdec \
--disable-lzmadec \
--disable-lzmainfo
make clean
make -j$(nproc) && make -C tests/ossfuzz && \
cp tests/ossfuzz/config/fuzz.options $OUT/ && \
cp tests/ossfuzz/config/fuzz.dict $OUT && \
find $SRC/xz/tests/files -name "*.xz" \
-exec zip -ujq $OUT/fuzz_seed_corpus.zip "{}" \;

8
projects/xz/project.yaml Normal file
View File

@ -0,0 +1,8 @@
homepage: "https://tukaani.org/xz/"
primary_contact: "lasse.collin@tukaani.org"
auto_ccs:
- "bshas3@gmail.com"
sanitizers:
- address
- memory
- undefined