[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2 1/2] Add libfuzzer target to fuzz/x86_instruction_emulator


  • To: Jan Beulich <jbeulich@xxxxxxxx>
  • From: Tamas K Lengyel <tamas@xxxxxxxxxxxxx>
  • Date: Mon, 22 Jul 2024 07:29:09 -0400
  • Arc-authentication-results: i=1; mx.zohomail.com; dkim=pass header.i=tklengyel.com; spf=pass smtp.mailfrom=tamas@xxxxxxxxxxxxx; dmarc=pass header.from=<tamas@xxxxxxxxxxxxx>
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1721647787; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; bh=tVYh9BoBALaOeAAhFsZTQGuOLRwufhhqKEnFtZLE2u0=; b=GxVCBqIlr8nNTXqHAhlPR7dywC2Jxe0rSvF1kXIkqp8OZ4lVPktJ2585Kl/VfKlCEoX7hwE+Uaiut7Lfp66w4ItFVV4iuuGFlAcMd6jRMz4UGb1UFHBT0G6Dt3MeS4fvhV2yW7fsw8Sx2ub2UoPJKAnVTimm2VjK40qZ83Voir4=
  • Arc-seal: i=1; a=rsa-sha256; t=1721647787; cv=none; d=zohomail.com; s=zohoarc; b=RPbaq0QGBv4pzg43N5aqrhAg6/w7FWKNA8UeaUWj5Ked4PcDn7bXnI5JnBdj04+IJN052kNnaIaoL4EFrADxRmYX4irnrdbqGGRENRkDtnxbv18kJv/gEw2GDHaP+AebL6MItiWQgw07YfiR9eh4ALsZ+CvQa0TSqRNpF+Z3AdQ=
  • Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Anthony PERARD <anthony@xxxxxxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
  • Delivery-date: Mon, 22 Jul 2024 11:29:53 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Mon, Jul 22, 2024 at 7:08 AM Jan Beulich <jbeulich@xxxxxxxx> wrote:
>
> On 22.07.2024 13:03, Tamas K Lengyel wrote:
> > On Mon, Jul 22, 2024 at 5:20 AM Jan Beulich <jbeulich@xxxxxxxx> wrote:
> >>
> >> On 26.06.2024 00:47, Tamas K Lengyel wrote:
> >>> This target enables integration into oss-fuzz. Changing invalid input 
> >>> return
> >>> to -1 as values other then 0/-1 are reserved by libfuzzer. Also adding the
> >>> missing __wrap_vsnprintf wrapper which is required for successful oss-fuzz
> >>> build.
> >>>
> >>> Signed-off-by: Tamas K Lengyel <tamas@xxxxxxxxxxxxx>
> >>
> >> I've reverted this right away, because of ...
> >>
> >>> @@ -58,6 +58,9 @@ afl-harness: afl-harness.o $(OBJS) cpuid.o wrappers.o
> >>>  afl-harness-cov: afl-harness-cov.o $(patsubst %.o,%-cov.o,$(OBJS)) 
> >>> cpuid.o wrappers.o
> >>>       $(CC) $(CFLAGS) $(GCOV_FLAGS) $(addprefix 
> >>> -Wl$(comma)--wrap=,$(WRAPPED)) $^ -o $@
> >>>
> >>> +libfuzzer-harness: $(OBJS) cpuid.o wrappers.o
> >>> +     $(CC) $(CFLAGS) $(LIB_FUZZING_ENGINE) -fsanitize=fuzzer $(addprefix 
> >>> -Wl$(comma)--wrap=,$(WRAPPED)) $^ -o $@
> >>
> >> ... this causing
> >>
> >> gcc: error: unrecognized argument to '-fsanitize=' option: 'fuzzer'
> >> make[6]: *** [Makefile:62: libfuzzer-harness] Error 1
> >>
> >> with apparently a fair set of gcc-s used by distro-s we use for CI.
> >
> > Well let me see if I can hack the Makefile to only build this with clang..
>
> Oh, and - please don't special case Clang. Instead please check for option
> availability (e.g. using cc-option), such that for possible future gcc,
> when support there may have been added, we'd then build it there as well.

I decided to just not include the libfuzzer harness in the default 'all' target.

Tamas



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.