2017-07-19 20:02:39 +00:00
|
|
|
#!/bin/bash -eu
|
|
|
|
# Copyright 2017 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.
|
|
|
|
#
|
|
|
|
################################################################################
|
|
|
|
|
|
|
|
./bootstrap
|
|
|
|
|
|
|
|
./configure \
|
|
|
|
--enable-fuzz-targets \
|
|
|
|
--enable-application-coap \
|
2018-08-23 23:06:48 +00:00
|
|
|
--enable-border-agent \
|
2017-07-19 20:02:39 +00:00
|
|
|
--enable-border-router \
|
|
|
|
--enable-cert-log \
|
2018-08-23 23:06:48 +00:00
|
|
|
--enable-channel-manager \
|
2018-01-31 15:50:32 +00:00
|
|
|
--enable-channel-monitor \
|
2017-07-19 20:02:39 +00:00
|
|
|
--enable-child-supervision \
|
|
|
|
--enable-commissioner \
|
|
|
|
--enable-dhcp6-client \
|
|
|
|
--enable-dhcp6-server \
|
2018-01-31 15:50:32 +00:00
|
|
|
--enable-dns-client \
|
2017-07-19 20:02:39 +00:00
|
|
|
--enable-diag \
|
|
|
|
--enable-dns-client \
|
|
|
|
--enable-jam-detection \
|
|
|
|
--enable-joiner \
|
|
|
|
--enable-legacy \
|
2018-01-31 15:50:32 +00:00
|
|
|
--enable-mac-filter \
|
2017-07-19 20:02:39 +00:00
|
|
|
--enable-mtd-network-diagnostic \
|
|
|
|
--enable-raw-link-api \
|
2018-01-31 15:50:32 +00:00
|
|
|
--enable-service \
|
2018-08-23 23:06:48 +00:00
|
|
|
--enable-udp-proxy \
|
2017-07-19 20:02:39 +00:00
|
|
|
--disable-docs
|
|
|
|
|
|
|
|
make -j$(nproc)
|
|
|
|
|
|
|
|
find . -name '*-fuzzer' -exec cp -v '{}' $OUT ';'
|
2017-08-11 17:39:17 +00:00
|
|
|
find . -name '*-fuzzer.dict' -exec cp -v '{}' $OUT ';'
|
2017-07-19 20:02:39 +00:00
|
|
|
find . -name '*-fuzzer.options' -exec cp -v '{}' $OUT ';'
|
2017-08-11 17:39:17 +00:00
|
|
|
|
|
|
|
fuzzers=$(find tests/fuzz -name "*-fuzzer")
|
|
|
|
for f in $fuzzers; do
|
|
|
|
fuzzer=$(basename $f -fuzzer)
|
|
|
|
|
|
|
|
if [ -d "tests/fuzz/corpora/${fuzzer}" ]; then
|
|
|
|
zip -j $OUT/$(basename $f)_seed_corpus.zip tests/fuzz/corpora/${fuzzer}/*
|
|
|
|
fi
|
|
|
|
done
|