1# Copyright 2018 Google Inc. 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); 4# you may not use this file except in compliance with the License. 5# You may obtain a copy of the License at 6# 7# http://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, 11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12# See the License for the specific language governing permissions and 13# limitations under the License. 14# 15################################################################################ 16 17FROM gcr.io/oss-fuzz-base/base-builder 18RUN apt-get update && apt-get install -y make cmake bzip2 autoconf automake gettext libtool python curl 19RUN rustup target add i686-unknown-linux-gnu 20#use different package sources for recent npm 21RUN curl -sL https://deb.nodesource.com/setup_10.x -o nodesource_setup.sh 22RUN bash nodesource_setup.sh 23RUN apt install -y nodejs 24RUN npm install -g browserify 25RUN npm install elliptic 26RUN git clone --depth 1 https://github.com/horhof/quickjs quickjs 27RUN git clone --depth 1 https://github.com/catenacyber/elliptic-curve-differential-fuzzer.git ecfuzzer 28RUN git clone --recursive --depth 1 https://github.com/ARMmbed/mbedtls.git mbedtls 29RUN git clone --depth 1 https://github.com/ANSSI-FR/libecc.git libecc 30RUN git clone --depth 1 https://github.com/openssl/openssl.git openssl 31RUN git clone --depth 1 git://git.gnupg.org/libgpg-error.git libgpg-error 32RUN git clone --depth 1 git://git.gnupg.org/libgcrypt.git gcrypt 33RUN git clone --depth 1 https://github.com/weidai11/cryptopp cryptopp 34ADD https://gmplib.org/download/gmp/gmp-6.1.2.tar.bz2 gmp-6.1.2.tar.bz2 35RUN git clone --depth 1 https://github.com/gnutls/nettle.git nettle 36RUN git clone --depth 1 https://github.com/randombit/botan.git botan 37WORKDIR $SRC/ 38COPY build.sh $SRC/ 39