ossfuzz: moving towards the ideal integration #1842

Closed
wants to merge 2 commits into
from

Conversation

Projects
None yet
3 participants
@cmeister2
Contributor

cmeister2 commented Aug 29, 2017

  • Start with the basic code from the ossfuzz project.
  • Rewrite fuzz corpora to be binary files full of Type-Length-Value
    data, and write a glue layer in the fuzzing function to convert
    corpora into CURL options.
  • Have supporting functions to generate corpora from existing tests

This still needs integrating into the rest of the build chain properly,
but is built in CI.

@coveralls

This comment has been minimized.

Show comment
Hide comment
@coveralls

coveralls Aug 29, 2017

Coverage Status

Coverage remained the same at 73.13% when pulling 77eb310 on cmeister2:cmeister2/ossfuzz/fuzzer into 73fa6aa on curl:master.

Coverage Status

Coverage remained the same at 73.13% when pulling 77eb310 on cmeister2:cmeister2/ossfuzz/fuzzer into 73fa6aa on curl:master.

@coveralls

This comment has been minimized.

Show comment
Hide comment
@coveralls

coveralls Aug 30, 2017

Coverage Status

Coverage decreased (-0.008%) to 73.122% when pulling 73d7d30 on cmeister2:cmeister2/ossfuzz/fuzzer into 73fa6aa on curl:master.

Coverage Status

Coverage decreased (-0.008%) to 73.122% when pulling 73d7d30 on cmeister2:cmeister2/ossfuzz/fuzzer into 73fa6aa on curl:master.

@coveralls

This comment has been minimized.

Show comment
Hide comment
@coveralls

coveralls Aug 30, 2017

Coverage Status

Coverage decreased (-0.02%) to 73.111% when pulling 73d7d30 on cmeister2:cmeister2/ossfuzz/fuzzer into 73fa6aa on curl:master.

Coverage Status

Coverage decreased (-0.02%) to 73.111% when pulling 73d7d30 on cmeister2:cmeister2/ossfuzz/fuzzer into 73fa6aa on curl:master.

@coveralls

This comment has been minimized.

Show comment
Hide comment
@coveralls

coveralls Aug 30, 2017

Coverage Status

Coverage decreased (-0.02%) to 73.112% when pulling 73d7d30 on cmeister2:cmeister2/ossfuzz/fuzzer into 73fa6aa on curl:master.

Coverage Status

Coverage decreased (-0.02%) to 73.112% when pulling 73d7d30 on cmeister2:cmeister2/ossfuzz/fuzzer into 73fa6aa on curl:master.

@cmeister2

This comment has been minimized.

Show comment
Hide comment
@cmeister2

cmeister2 Aug 30, 2017

Contributor

Ok, the few tweaks I made means that this compiles within the Automake system and links to the libraries as expected (mostly this was reinstating the old code and adding some new tweaks to link to $LIB_FUZZING_ENGINE).

Contributor

cmeister2 commented Aug 30, 2017

Ok, the few tweaks I made means that this compiles within the Automake system and links to the libraries as expected (mostly this was reinstating the old code and adding some new tweaks to link to $LIB_FUZZING_ENGINE).

tests/fuzz/Makefile.fuzz
@@ -0,0 +1,48 @@
+# Copyright 2017 Google Inc. All Rights Reserved.

This comment has been minimized.

@maxdymond

maxdymond Aug 31, 2017

Contributor

From IRC: this file doesn't need to exist anymore now that the Makefile.am works

@maxdymond

maxdymond Aug 31, 2017

Contributor

From IRC: this file doesn't need to exist anymore now that the Makefile.am works

tests/fuzz/README
+
+(optional) export LIB_FUZZING_ENGINE=<path to libFuzzer.a>
+
+make -f Makefile.fuzz check

This comment has been minimized.

@maxdymond

maxdymond Aug 31, 2017

Contributor

Don't need the -f Makefile.fuzz qualifier here now that Automake works

@maxdymond

maxdymond Aug 31, 2017

Contributor

Don't need the -f Makefile.fuzz qualifier here now that Automake works

ossfuzz: moving towards the ideal integration
- Start with the basic code from the ossfuzz project.
- Rewrite fuzz corpora to be binary files full of Type-Length-Value
  data, and write a glue layer in the fuzzing function to convert
  corpora into CURL options.
- Have supporting functions to generate corpora from existing tests
- Integrate with Makefile.am
@coveralls

This comment has been minimized.

Show comment
Hide comment
@coveralls

coveralls Aug 31, 2017

Coverage Status

Coverage decreased (-0.02%) to 73.103% when pulling 7d63d1e on cmeister2:cmeister2/ossfuzz/fuzzer into 222e65f on curl:master.

Coverage Status

Coverage decreased (-0.02%) to 73.103% when pulling 7d63d1e on cmeister2:cmeister2/ossfuzz/fuzzer into 222e65f on curl:master.

ossfuzz: additional seed corpora
Create simple seed corpora for:
- FTP
- telnet
- dict
- tftp
- imap
- pop3

based off the tests of the same number.
@coveralls

This comment has been minimized.

Show comment
Hide comment
@coveralls

coveralls Sep 1, 2017

Coverage Status

Coverage increased (+0.003%) to 73.122% when pulling f7f8c77 on cmeister2:cmeister2/ossfuzz/fuzzer into 222e65f on curl:master.

Coverage Status

Coverage increased (+0.003%) to 73.122% when pulling f7f8c77 on cmeister2:cmeister2/ossfuzz/fuzzer into 222e65f on curl:master.

@cmeister2

This comment has been minimized.

Show comment
Hide comment
@cmeister2

cmeister2 Sep 1, 2017

Contributor

As discussed on IRC, it looks like failures are due to travis issues.

Contributor

cmeister2 commented Sep 1, 2017

As discussed on IRC, it looks like failures are due to travis issues.

@bagder bagder closed this in 1cf323e Sep 1, 2017

@lock lock bot locked as resolved and limited conversation to collaborators May 14, 2018

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.