diff mbox series

[PATCH-for-5.2] scripts/oss-fuzz: rename bin/qemu-fuzz-i386

Message ID 20201101212245.185819-1-alxndr@bu.edu (mailing list archive)
State New, archived
Headers show
Series [PATCH-for-5.2] scripts/oss-fuzz: rename bin/qemu-fuzz-i386 | expand

Commit Message

Alexander Bulekov Nov. 1, 2020, 9:22 p.m. UTC
OSS-Fuzz changed the way it scans for fuzzers in $DEST_DIR. The new code
also scans subdirectories for fuzzers. This means that OSS-Fuzz is
considering bin/qemu-fuzz-i386 as an independent fuzzer (it is not - it
requires a --fuzz-target argument). This has led to coverage-build
failures and false crash reports. To work around this, we take advantage
of OSS-Fuzz' filename extension check - OSS-Fuzz will not run anything
that has an extension that is not ".exe":
https://github.com/google/oss-fuzz/blob/master/infra/utils.py#L115

Reported-by: OSS-Fuzz (Issue 26725)
Reported-by: OSS-Fuzz (Issue 26679)
Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
---

Also, for context:
https://github.com/google/oss-fuzz/issues/4575

 scripts/oss-fuzz/build.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Paolo Bonzini Nov. 2, 2020, 8:30 a.m. UTC | #1
On 01/11/20 22:22, Alexander Bulekov wrote:
> OSS-Fuzz changed the way it scans for fuzzers in $DEST_DIR. The new code
> also scans subdirectories for fuzzers. This means that OSS-Fuzz is
> considering bin/qemu-fuzz-i386 as an independent fuzzer (it is not - it
> requires a --fuzz-target argument). This has led to coverage-build
> failures and false crash reports. To work around this, we take advantage
> of OSS-Fuzz' filename extension check - OSS-Fuzz will not run anything
> that has an extension that is not ".exe":
> https://github.com/google/oss-fuzz/blob/master/infra/utils.py#L115
> 
> Reported-by: OSS-Fuzz (Issue 26725)
> Reported-by: OSS-Fuzz (Issue 26679)
> Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
> ---
> 
> Also, for context:
> https://github.com/google/oss-fuzz/issues/4575
> 
>  scripts/oss-fuzz/build.sh | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/scripts/oss-fuzz/build.sh b/scripts/oss-fuzz/build.sh
> index fcae4a0c26..3b1c82b63d 100755
> --- a/scripts/oss-fuzz/build.sh
> +++ b/scripts/oss-fuzz/build.sh
> @@ -91,7 +91,7 @@ make "-j$(nproc)" qemu-fuzz-i386 V=1
>  # Copy over the datadir
>  cp  -r ../pc-bios/ "$DEST_DIR/pc-bios"
>  
> -cp "./qemu-fuzz-i386" "$DEST_DIR/bin/"
> +cp "./qemu-fuzz-i386" "$DEST_DIR/bin/qemu-fuzz-i386.base"
>  
>  # Run the fuzzer with no arguments, to print the help-string and get the list
>  # of available fuzz-targets. Copy over the qemu-fuzz-i386, naming it according
> @@ -104,7 +104,7 @@ do
>      # that are thin wrappers around this target that set the required
>      # environment variables according to predefined configs.
>      if [ "$target" != "generic-fuzz" ]; then
> -        ln  "$DEST_DIR/bin/qemu-fuzz-i386" \
> +        ln  "$DEST_DIR/bin/qemu-fuzz-i386.base" \
>              "$DEST_DIR/qemu-fuzz-i386-target-$target"
>      fi
>  done
> 

Queued, thanks.

Paolo
diff mbox series

Patch

diff --git a/scripts/oss-fuzz/build.sh b/scripts/oss-fuzz/build.sh
index fcae4a0c26..3b1c82b63d 100755
--- a/scripts/oss-fuzz/build.sh
+++ b/scripts/oss-fuzz/build.sh
@@ -91,7 +91,7 @@  make "-j$(nproc)" qemu-fuzz-i386 V=1
 # Copy over the datadir
 cp  -r ../pc-bios/ "$DEST_DIR/pc-bios"
 
-cp "./qemu-fuzz-i386" "$DEST_DIR/bin/"
+cp "./qemu-fuzz-i386" "$DEST_DIR/bin/qemu-fuzz-i386.base"
 
 # Run the fuzzer with no arguments, to print the help-string and get the list
 # of available fuzz-targets. Copy over the qemu-fuzz-i386, naming it according
@@ -104,7 +104,7 @@  do
     # that are thin wrappers around this target that set the required
     # environment variables according to predefined configs.
     if [ "$target" != "generic-fuzz" ]; then
-        ln  "$DEST_DIR/bin/qemu-fuzz-i386" \
+        ln  "$DEST_DIR/bin/qemu-fuzz-i386.base" \
             "$DEST_DIR/qemu-fuzz-i386-target-$target"
     fi
 done