New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 853017 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Aug 17
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug
Build-Toolchain

Blocking:
issue 648042
issue 853195



Sign in to add a comment

Add support for libprotobuf-mutator to Chrome OS

Project Member Reported by metzman@chromium.org, Jun 14

Issue description

There is demand for tooling to write fuzzers that can produce data in a particular format, rather than the byte array produced by libFuzzer.

libprotobuf-mutator is a good tool for this.

It is used in Chromium for this purpose, but is not yet supported in Chromium OS.

 
Blocking: 648042
Components: Tools>ChromeOS-Toolchain
Labels: OS-Chrome
Blocking: 853195
Owner: manojgupta@chromium.org
Status: Assigned (was: Available)
Cc: allenwebb@chromium.org
Owner: allenwebb@chromium.org
Here is an initial ebuild:
https://chromium-review.googlesource.com/c/chromiumos/overlays/chromiumos-overlay/+/1178463

Unfortunately a cmake bug in FindThreads related to cross compiling breaks it.
What error do you see?

I was able to build it for amd64-generic (compile only) but had to comment out all code trying to build tests.
src_install functions also need to be written to install the built libraries and header.
protobuf.patch
4.2 KB Download
I was able to work around the problem by setting:
-DTHREADS_PTHREAD_ARG=-pthread
I have uploaded a new patchset that works. I am still testing for arm though.
Project Member

Comment 11 by bugdroid1@chromium.org, Aug 17

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/6a1593df5d2b6f967bfbc3b48da5c97158a62476

commit 6a1593df5d2b6f967bfbc3b48da5c97158a62476
Author: Allen Webb <allenwebb@google.com>
Date: Fri Aug 17 09:13:49 2018

libprotobuf-mutator: Add new ebuild.

libprotobuf-mutator implements custom mutators for protocol buffers
to enable fuzzing libraries to obtain higher coverage faster.

BUG= chromium:853017 
TEST=emerge-{BOARD} libprotobuf-mutator

Change-Id: I1521324ac263ffc19d375c4d65a567c75e16d283
Signed-off-by: Allen Webb <allenwebb@google.com>
Reviewed-on: https://chromium-review.googlesource.com/1178463
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>

[add] https://crrev.com/6a1593df5d2b6f967bfbc3b48da5c97158a62476/dev-libs/libprotobuf-mutator/libprotobuf-mutator-20180625.ebuild
[add] https://crrev.com/6a1593df5d2b6f967bfbc3b48da5c97158a62476/dev-libs/libprotobuf-mutator/Manifest

Status: Fixed (was: Assigned)
Thanks Allen!
I'll add something to the Chrome OS docs about this.

Sign in to add a comment