diff options
Diffstat (limited to 'unicorn_mode')
-rw-r--r-- | unicorn_mode/UNICORNAFL_VERSION | 2 | ||||
-rw-r--r-- | unicorn_mode/samples/persistent/COMPILE.md | 4 | ||||
-rw-r--r-- | unicorn_mode/samples/persistent/Makefile | 9 | ||||
m--------- | unicorn_mode/unicornafl | 0 | ||||
-rwxr-xr-x | unicorn_mode/update_uc_ref.sh | 24 |
5 files changed, 31 insertions, 8 deletions
diff --git a/unicorn_mode/UNICORNAFL_VERSION b/unicorn_mode/UNICORNAFL_VERSION index c0cc9e02..336c171b 100644 --- a/unicorn_mode/UNICORNAFL_VERSION +++ b/unicorn_mode/UNICORNAFL_VERSION @@ -1 +1 @@ -94c1976 +a5b7900 diff --git a/unicorn_mode/samples/persistent/COMPILE.md b/unicorn_mode/samples/persistent/COMPILE.md index 781f15c0..111dfc54 100644 --- a/unicorn_mode/samples/persistent/COMPILE.md +++ b/unicorn_mode/samples/persistent/COMPILE.md @@ -1,6 +1,6 @@ # C Sample -This shows a simple persistent harness for unicornafl in C +This shows a simple persistent harness for unicornafl in C. In contrast to the normal c harness, this harness manually resets the unicorn state on each new input. Thanks to this, we can rerun the testcase in unicorn multiple times, without the need to fork again. @@ -21,4 +21,4 @@ was built in case you want to rebuild it or recompile it for any reason. The pre-built binary (persistent_target_x86_64.bin) was built using -g -O0 in gcc. -We then load the binary we execute the main function directly. +We then load the binary and we execute the main function directly. diff --git a/unicorn_mode/samples/persistent/Makefile b/unicorn_mode/samples/persistent/Makefile index 9c7ed7aa..9596facc 100644 --- a/unicorn_mode/samples/persistent/Makefile +++ b/unicorn_mode/samples/persistent/Makefile @@ -17,9 +17,9 @@ CFLAGS += -Wall -Werror -I../../unicornafl/include LDFLAGS += -L$(LIBDIR) -lpthread -lm -_LRT = $(_UNIQ)$(UNAME_S:Linux=) -__LRT = $(_LRT:$(_UNIQ)=-lrt) -LRT = $(__LRT:$(_UNIQ)=) +_LRT = $(_UNIQ)$(UNAME_S) +__LRT = $(_LRT:$(_UNIQ)Linux=-lrt) +LRT = $(__LRT:$(_UNIQ)$(UNAME_S)=) LDFLAGS += $(LRT) @@ -48,3 +48,6 @@ debug: harness-debug.o fuzz: harness ../../../afl-fuzz -m none -i sample_inputs -o out -- ./harness @@ + +debugmake: + @echo UNAME_S=$(UNAME_S), _LRT=$(_LRT), __LRT=$(__LRT), LRT=$(LRT) diff --git a/unicorn_mode/unicornafl b/unicorn_mode/unicornafl -Subproject 94c1976975518691a03602f7ec5a817e2f34118 +Subproject a5b79002ca18219c83f9aec4e71007917c6be2e diff --git a/unicorn_mode/update_uc_ref.sh b/unicorn_mode/update_uc_ref.sh index d198fa2a..486f37d6 100755 --- a/unicorn_mode/update_uc_ref.sh +++ b/unicorn_mode/update_uc_ref.sh @@ -1,20 +1,40 @@ #/bin/sh +################################################## +# AFL++ internal tool to update unicornafl ref. +# Usage: ./update_uc_ref.sh <new commit hash> +# If no commit hash was provided, it'll take HEAD. +################################################## + UC_VERSION_FILE='./UNICORNAFL_VERSION' NEW_VERSION="$1" -if [ -z "$NEW_VERSION" ]; then + +if [ "$NEW_VERSION" = "-h" ]; then echo "Internal script to update bound unicornafl version." echo echo "Usage: ./update_uc_ref.sh <new commit hash>" + echo "If no commit hash is provided, will use HEAD." + echo "-h to show this help screen." exit 1 fi git submodule init && git submodule update || exit 1 -cd ./unicornafl +cd ./unicornafl || exit 1 git fetch origin master 1>/dev/null || exit 1 git stash 1>/dev/null 2>/dev/null git stash drop 1>/dev/null 2>/dev/null + +if [ -z "$NEW_VERSION" ]; then + # No version provided, take HEAD. + NEW_VERSION=$(git rev-parse --short HEAD) +fi + +if [ -z "$NEW_VERSION" ]; then + echo "Error getting version." + exit 1 +fi + git checkout "$NEW_VERSION" || exit 1 cd .. |