diff --git a/DEVELOPING.md b/DEVELOPING.md index 0aae790f5..069fb7496 100644 --- a/DEVELOPING.md +++ b/DEVELOPING.md @@ -84,7 +84,7 @@ to generate new unix man pages for that version : After successfully compiling Hush, you can generate a debian package of these binaries with: - ./zcutil/build-debian-package.sh + ./util/build-debian-package.sh This command will not work on Mac OS X. Currently you cannot generate a Debian package from operating systems other than Linux. Oh well. diff --git a/Dockerfile b/Dockerfile index e1323ec2f..b89a159a0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -26,7 +26,7 @@ RUN ln -sf /hush/src/hushd /usr/bin/hushd && \ ln -sf /hush/src/hush-tx /usr/bin/hush-tx && \ ln -sf /hush/src/wallet-utility /usr/bin/hush-wallet-utility && \ ln -sf /hush/src/hush-smart-chain /usr/bin/hush-smart-chain && \ - ln -sf /hush/zcutil/docker-entrypoint.sh /usr/bin/entrypoint && \ - ln -sf /hush/zcutil/docker-hush-cli.sh /usr/bin/hush-cli + ln -sf /hush/util/docker-entrypoint.sh /usr/bin/entrypoint && \ + ln -sf /hush/util/docker-hush-cli.sh /usr/bin/hush-cli CMD ["entrypoint"] diff --git a/Makefile.am b/Makefile.am index bc04a0cdd..de977adfc 100644 --- a/Makefile.am +++ b/Makefile.am @@ -233,7 +233,7 @@ endif endif dist_bin_SCRIPTS = -dist_noinst_SCRIPTS = autogen.sh zcutil/build-debian-package.sh zcutil/build.sh +dist_noinst_SCRIPTS = autogen.sh util/build-debian-package.sh util/build.sh EXTRA_DIST = $(top_srcdir)/share/genbuild.sh qa/pull-tester/rpc-tests.sh qa/pull-tester/run-bitcoin-cli qa/rpc-tests qa/hush $(DIST_DOCS) $(BIN_CHECKS) diff --git a/build.sh b/build.sh index 908ee2e15..1a2d1c8a0 100755 --- a/build.sh +++ b/build.sh @@ -4,4 +4,4 @@ # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html set -eu -o pipefail -./zcutil/build.sh --disable-tests $@ +./util/build.sh --disable-tests $@ diff --git a/util/afl/afl-build.sh b/util/afl/afl-build.sh new file mode 100755 index 000000000..74d5980ce --- /dev/null +++ b/util/afl/afl-build.sh @@ -0,0 +1,22 @@ +#!/usr/bin/env bash +# Copyright (c) 2016-2021 The Hush developers +# Distributed under the GPLv3 software license, see the accompanying +# file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html +# A wrapper around ./util/build.sh for instrumenting the build with AFL: +# ./util/afl/afl-build.sh +# You may obtain a copy of AFL using ./util/afl/afl-get.sh. + +set -eu -o pipefail + +export AFL_INSTALL_DIR=$(realpath "$1") +FUZZ_CASE="$2" +shift 2 +export AFL_LOG_DIR="$(pwd)" +export UTIL=$(realpath "./util") + +cp "./src/fuzzing/$FUZZ_CASE/fuzz.cpp" src/fuzz.cpp + +CONFIGURE_FLAGS="--enable-tests=no --enable-fuzz-main" "$UTIL/build.sh" "CC=$UTIL/afl/hush-wrapper-gcc" "CXX=$UTIL/afl/hush-wrapper-g++" AFL_HARDEN=1 "$@" + +echo "You can now run AFL as follows:" +echo "$ ./util/afl/afl-run.sh '$AFL_INSTALL_DIR' '$FUZZ_CASE'" diff --git a/zcutil/afl/afl-get.sh b/util/afl/afl-get.sh similarity index 87% rename from zcutil/afl/afl-get.sh rename to util/afl/afl-get.sh index 255adeb17..0156b5105 100755 --- a/zcutil/afl/afl-get.sh +++ b/util/afl/afl-get.sh @@ -3,7 +3,7 @@ # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html # Obtains and builds a copy of AFL from source. -# ./zcutil/afl/afl-get.sh +# ./util/afl/afl-get.sh set -eu -o pipefail @@ -32,5 +32,5 @@ make echo "You can now build hushd with AFL instrumentation as follows:" echo "$ make clean # if you've already built hushd without AFL instrumentation" -echo "$ ./zcutil/afl/afl-build.sh '$(pwd)' -j\$(nproc)" +echo "$ ./util/afl/afl-build.sh '$(pwd)' -j\$(nproc)" echo "...where is the name of a directory in src/fuzzing." diff --git a/zcutil/afl/afl-getbuildrun.sh b/util/afl/afl-getbuildrun.sh similarity index 77% rename from zcutil/afl/afl-getbuildrun.sh rename to util/afl/afl-getbuildrun.sh index de9dba15b..5bd1986f9 100755 --- a/zcutil/afl/afl-getbuildrun.sh +++ b/util/afl/afl-getbuildrun.sh @@ -16,8 +16,8 @@ export AFL_INSTALL_DIR=$(realpath "./afl-temp") if [ ! -d "$AFL_INSTALL_DIR" ]; then mkdir "$AFL_INSTALL_DIR" - ./zcutil/afl/afl-get.sh "$AFL_INSTALL_DIR" + ./util/afl/afl-get.sh "$AFL_INSTALL_DIR" fi -./zcutil/afl/afl-build.sh "$AFL_INSTALL_DIR" "$FUZZ_CASE" -j$(nproc) -./zcutil/afl/afl-run.sh "$AFL_INSTALL_DIR" "$FUZZ_CASE" "$@" +./util/afl/afl-build.sh "$AFL_INSTALL_DIR" "$FUZZ_CASE" -j$(nproc) +./util/afl/afl-run.sh "$AFL_INSTALL_DIR" "$FUZZ_CASE" "$@" diff --git a/zcutil/afl/afl-run.sh b/util/afl/afl-run.sh similarity index 100% rename from zcutil/afl/afl-run.sh rename to util/afl/afl-run.sh diff --git a/zcutil/afl/hush-wrapper b/util/afl/hush-wrapper similarity index 100% rename from zcutil/afl/hush-wrapper rename to util/afl/hush-wrapper diff --git a/zcutil/afl/hush-wrapper-g++ b/util/afl/hush-wrapper-g++ similarity index 100% rename from zcutil/afl/hush-wrapper-g++ rename to util/afl/hush-wrapper-g++ diff --git a/zcutil/afl/hush-wrapper-gcc b/util/afl/hush-wrapper-gcc similarity index 100% rename from zcutil/afl/hush-wrapper-gcc rename to util/afl/hush-wrapper-gcc diff --git a/zcutil/build-arm.sh b/util/build-arm.sh similarity index 98% rename from zcutil/build-arm.sh rename to util/build-arm.sh index c721b3e57..a3a1b927b 100755 --- a/zcutil/build-arm.sh +++ b/util/build-arm.sh @@ -22,7 +22,7 @@ EOF if [ "x$*" = 'x--help' ] then - cat ./zcutil/dragon.txt + cat ./util/dragon.txt cat < -# You may obtain a copy of AFL using ./zcutil/afl/afl-get.sh. - -set -eu -o pipefail - -export AFL_INSTALL_DIR=$(realpath "$1") -FUZZ_CASE="$2" -shift 2 -export AFL_LOG_DIR="$(pwd)" -export ZCUTIL=$(realpath "./zcutil") - -cp "./src/fuzzing/$FUZZ_CASE/fuzz.cpp" src/fuzz.cpp - -CONFIGURE_FLAGS="--enable-tests=no --enable-fuzz-main" "$ZCUTIL/build.sh" "CC=$ZCUTIL/afl/hush-wrapper-gcc" "CXX=$ZCUTIL/afl/hush-wrapper-g++" AFL_HARDEN=1 "$@" - -echo "You can now run AFL as follows:" -echo "$ ./zcutil/afl/afl-run.sh '$AFL_INSTALL_DIR' '$FUZZ_CASE'"