diff mbox series

[v2,12/15] scripts/oss-fuzz: Add general-fuzzer configs for oss-fuzz

Message ID 20200819061110.1320568-13-alxndr@bu.edu (mailing list archive)
State New, archived
Headers show
Series Add a General Virtual Device Fuzzer | expand

Commit Message

Alexander Bulekov Aug. 19, 2020, 6:11 a.m. UTC
Each of these entries is built into a wrapper binary that sets the
needed environment variables and executes the general virtual-device
fuzzer. In the future, we will need additional fields, such as arch=arm,
timeout_per_testcase=0, reset=reboot, etc...

Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
---
 scripts/oss-fuzz/general_fuzzer_configs.yml | 103 ++++++++++++++++++++
 1 file changed, 103 insertions(+)
 create mode 100644 scripts/oss-fuzz/general_fuzzer_configs.yml

Comments

Darren Kenny Sept. 3, 2020, 9:16 a.m. UTC | #1
On Wednesday, 2020-08-19 at 02:11:07 -04, Alexander Bulekov wrote:
> Each of these entries is built into a wrapper binary that sets the
> needed environment variables and executes the general virtual-device
> fuzzer. In the future, we will need additional fields, such as arch=arm,
> timeout_per_testcase=0, reset=reboot, etc...
>
> Signed-off-by: Alexander Bulekov <alxndr@bu.edu>

Reviewed-by: Darren Kenny <darren.kenny@oracle.com>

> ---
>  scripts/oss-fuzz/general_fuzzer_configs.yml | 103 ++++++++++++++++++++
>  1 file changed, 103 insertions(+)
>  create mode 100644 scripts/oss-fuzz/general_fuzzer_configs.yml
>
> diff --git a/scripts/oss-fuzz/general_fuzzer_configs.yml b/scripts/oss-fuzz/general_fuzzer_configs.yml
> new file mode 100644
> index 0000000000..010e92a2a5
> --- /dev/null
> +++ b/scripts/oss-fuzz/general_fuzzer_configs.yml
> @@ -0,0 +1,103 @@
> +configs:
> +    - name: virtio-net-pci-slirp
> +      args: >
> +        -M q35 -nodefaults
> +        -device virtio-net,netdev=net0 -netdev user,id=net0
> +      objects: virtio*
> +
> +    - name: virtio-blk
> +      args: >
> +        -machine q35 -device virtio-blk,drive=disk0
> +        -drive file=null-co://,id=disk0,if=none,format=raw
> +      objects: virtio*
> +
> +    - name: virtio-scsi
> +      args: >
> +        -machine q35 -device virtio-scsi,num_queues=8
> +        -device scsi-hd,drive=disk0
> +        -drive file=null-co://,id=disk0,if=none,format=raw
> +      objects: scsi* virtio*
> +
> +    - name: virtio-gpu
> +      args: -machine q35 -nodefaults -device virtio-gpu
> +      objects: virtio*
> +
> +    - name: virtio-vga
> +      args: -machine q35 -nodefaults -device virtio-vga
> +      objects: virtio*
> +
> +    - name: virtio-rng
> +      args: -machine q35 -nodefaults -device virtio-rng
> +      objects: virtio*
> +
> +    - name: virtio-balloon
> +      args: -machine q35 -nodefaults -device virtio-balloon
> +      objects: virtio*
> +
> +    - name: virtio-serial
> +      args: -machine q35 -nodefaults -device virtio-serial
> +      objects: virtio*
> +
> +    - name: virtio-mouse
> +      args: -machine q35 -nodefaults -device virtio-mouse
> +      objects: virtio*
> +
> +    - name: e1000
> +      args: >
> +        -M q35 -nodefaults
> +        -device e1000,netdev=net0 -netdev user,id=net0
> +      objects: e1000
> +
> +    - name: e1000e
> +      args: >
> +        -M q35 -nodefaults
> +        -device e1000e,netdev=net0 -netdev user,id=net0
> +      objects: e1000e
> +
> +    - name: cirrus-vga
> +      args: -machine q35 -nodefaults -device cirrus-vga
> +      objects: cirrus*
> +
> +    - name: bochs-display
> +      args: -machine q35 -nodefaults -device bochs-display
> +      objects: bochs*
> +
> +    - name: intel-hda
> +      args: >
> +        -machine q35 -nodefaults -device intel-hda,id=hda0
> +        -device hda-output,bus=hda0.0 -device hda-micro,bus=hda0.0
> +        -device hda-duplex,bus=hda0.0
> +      objects: intel-hda
> +
> +    - name: ide-hd
> +      args: >
> +        -machine q35 -nodefaults
> +        -drive file=null-co://,if=none,format=raw,id=disk0
> +        -device ide-hd,drive=disk0
> +      objects: ahci*
> +
> +    - name: floppy
> +      args: >
> +        -machine pc -nodefaults -device floppy,id=floppy0
> +        -drive id=disk0,file=null-co://,file.read-zeroes=on,if=none
> +        -device floppy,drive=disk0,drive-type=288
> +      objects: fd* floppy*
> +
> +    - name: xhci
> +      args: >
> +        -machine q35 -nodefaults
> +        -drive file=null-co://,if=none,format=raw,id=disk0
> +        -device qemu-xhci,id=xhci -device usb-tablet,bus=xhci.0 -device usb-bot
> +        -device usb-storage,drive=disk0 -chardev null,id=cd0 -chardev null,id=cd1
> +        -device usb-braille,chardev=cd0 -device usb-ccid -device usb-ccid
> +        -device usb-kbd -device usb-mouse -device usb-serial,chardev=cd1
> +        -device usb-tablet -device usb-wacom-tablet -device usb-audio
> +      objects: "*usb* *uhci* *xhci*"
> +
> +    - name: pc-i440fx
> +      args: -machine pc
> +      objects: "*"
> +
> +    - name: pc-q35
> +      args: -machine q35
> +      objects: "*"
> -- 
> 2.27.0
diff mbox series

Patch

diff --git a/scripts/oss-fuzz/general_fuzzer_configs.yml b/scripts/oss-fuzz/general_fuzzer_configs.yml
new file mode 100644
index 0000000000..010e92a2a5
--- /dev/null
+++ b/scripts/oss-fuzz/general_fuzzer_configs.yml
@@ -0,0 +1,103 @@ 
+configs:
+    - name: virtio-net-pci-slirp
+      args: >
+        -M q35 -nodefaults
+        -device virtio-net,netdev=net0 -netdev user,id=net0
+      objects: virtio*
+
+    - name: virtio-blk
+      args: >
+        -machine q35 -device virtio-blk,drive=disk0
+        -drive file=null-co://,id=disk0,if=none,format=raw
+      objects: virtio*
+
+    - name: virtio-scsi
+      args: >
+        -machine q35 -device virtio-scsi,num_queues=8
+        -device scsi-hd,drive=disk0
+        -drive file=null-co://,id=disk0,if=none,format=raw
+      objects: scsi* virtio*
+
+    - name: virtio-gpu
+      args: -machine q35 -nodefaults -device virtio-gpu
+      objects: virtio*
+
+    - name: virtio-vga
+      args: -machine q35 -nodefaults -device virtio-vga
+      objects: virtio*
+
+    - name: virtio-rng
+      args: -machine q35 -nodefaults -device virtio-rng
+      objects: virtio*
+
+    - name: virtio-balloon
+      args: -machine q35 -nodefaults -device virtio-balloon
+      objects: virtio*
+
+    - name: virtio-serial
+      args: -machine q35 -nodefaults -device virtio-serial
+      objects: virtio*
+
+    - name: virtio-mouse
+      args: -machine q35 -nodefaults -device virtio-mouse
+      objects: virtio*
+
+    - name: e1000
+      args: >
+        -M q35 -nodefaults
+        -device e1000,netdev=net0 -netdev user,id=net0
+      objects: e1000
+
+    - name: e1000e
+      args: >
+        -M q35 -nodefaults
+        -device e1000e,netdev=net0 -netdev user,id=net0
+      objects: e1000e
+
+    - name: cirrus-vga
+      args: -machine q35 -nodefaults -device cirrus-vga
+      objects: cirrus*
+
+    - name: bochs-display
+      args: -machine q35 -nodefaults -device bochs-display
+      objects: bochs*
+
+    - name: intel-hda
+      args: >
+        -machine q35 -nodefaults -device intel-hda,id=hda0
+        -device hda-output,bus=hda0.0 -device hda-micro,bus=hda0.0
+        -device hda-duplex,bus=hda0.0
+      objects: intel-hda
+
+    - name: ide-hd
+      args: >
+        -machine q35 -nodefaults
+        -drive file=null-co://,if=none,format=raw,id=disk0
+        -device ide-hd,drive=disk0
+      objects: ahci*
+
+    - name: floppy
+      args: >
+        -machine pc -nodefaults -device floppy,id=floppy0
+        -drive id=disk0,file=null-co://,file.read-zeroes=on,if=none
+        -device floppy,drive=disk0,drive-type=288
+      objects: fd* floppy*
+
+    - name: xhci
+      args: >
+        -machine q35 -nodefaults
+        -drive file=null-co://,if=none,format=raw,id=disk0
+        -device qemu-xhci,id=xhci -device usb-tablet,bus=xhci.0 -device usb-bot
+        -device usb-storage,drive=disk0 -chardev null,id=cd0 -chardev null,id=cd1
+        -device usb-braille,chardev=cd0 -device usb-ccid -device usb-ccid
+        -device usb-kbd -device usb-mouse -device usb-serial,chardev=cd1
+        -device usb-tablet -device usb-wacom-tablet -device usb-audio
+      objects: "*usb* *uhci* *xhci*"
+
+    - name: pc-i440fx
+      args: -machine pc
+      objects: "*"
+
+    - name: pc-q35
+      args: -machine q35
+      objects: "*"