1#!/bin/bash -eu 2# 3# Copyright 2020 Google Inc. 4# 5# Licensed under the Apache License, Version 2.0 (the "License"); 6# you may not use this file except in compliance with the License. 7# You may obtain a copy of the License at 8# 9# http://www.apache.org/licenses/LICENSE-2.0 10# 11# Unless required by applicable law or agreed to in writing, software 12# distributed under the License is distributed on an "AS IS" BASIS, 13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14# See the License for the specific language governing permissions and 15# limitations under the License. 16# 17################################################################################ 18 19TARGETS_DIR=Tests/Fuzzers/Bin 20 21# Build libpcap 22cd $SRC/libpcap/ 23./configure 24make -j$(nproc) 25 26# Build PcapPlusPlus linking statically against the built libpcap 27cd $SRC/PcapPlusPlus 28./configure-fuzzing.sh --libpcap-static-lib-dir $SRC/libpcap/ 29make clean 30make -j$(nproc) fuzzers 31 32# Copy target and options 33cp $TARGETS_DIR/FuzzTarget $OUT 34cp $(ldd $OUT/FuzzTarget | cut -d" " -f3) $OUT 35cp $SRC/default.options $OUT/FuzzTarget.options 36 37# Copy corpora 38cd $SRC/tcpdump 39zip -jr FuzzTarget_seed_corpus.zip tests/*.pcap 40cp FuzzTarget_seed_corpus.zip $OUT/ 41