Commit Graph

908 Commits

Author SHA1 Message Date
jonathanmetzman bbbbad5c07
Prepare for JavaScript fuzzing (#8325)
Prepare for JavaScript fuzzing
Related: #8324
2022-08-23 17:41:42 -04:00
Oliver Chang d412c6b08b
Pin Jazzer to older revision (#8275)
All latest builds seem to be broken with:

```
OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended
INFO: Loaded 112 hooks from com.code_intelligence.jazzer.runtime.TraceCmpHooks
INFO: Loaded 4 hooks from com.code_intelligence.jazzer.runtime.TraceDivHooks
INFO: Loaded 2 hooks from com.code_intelligence.jazzer.runtime.TraceIndirHooks
INFO: Loaded 4 hooks from com.code_intelligence.jazzer.runtime.NativeLibHooks
INFO: Loaded 8 hooks from com.code_intelligence.jazzer.sanitizers.Deserialization
INFO: Loaded 5 hooks from com.code_intelligence.jazzer.sanitizers.ExpressionLanguageInjection
INFO: Loaded 70 hooks from com.code_intelligence.jazzer.sanitizers.LdapInjection
INFO: Loaded 46 hooks from com.code_intelligence.jazzer.sanitizers.NamingContextLookup
INFO: Loaded 1 hooks from com.code_intelligence.jazzer.sanitizers.OsCommandInjection
INFO: Loaded 52 hooks from com.code_intelligence.jazzer.sanitizers.ReflectiveCall
INFO: Loaded 8 hooks from com.code_intelligence.jazzer.sanitizers.RegexInjection
Exception in thread "main" java.lang.ExceptionInInitializerError
  at com.code_intelligence.jazzer.sanitizers.RegexRoadblocks.<clinit>(RegexRoadblocks.java:72)
  at java.base/java.lang.Class.forName0(Native Method)
  at java.base/java.lang.Class.forName(Class.java:398)
  at com.code_intelligence.jazzer.instrumentor.Hooks$Companion$HooksLoader.loadHooks(Hooks.kt:66)
  at com.code_intelligence.jazzer.instrumentor.Hooks$Companion$HooksLoader.load(Hooks.kt:48)
  at com.code_intelligence.jazzer.instrumentor.Hooks$Companion.loadHooks(Hooks.kt:42)
  at com.code_intelligence.jazzer.agent.Agent.premain(Agent.kt:137)
  at com.code_intelligence.jazzer.driver.Driver.start(Driver.java:97)
Caused by: java.lang.NumberFormatException: For input string: "./jazzer_driver"
  at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:66)
  at java.base/java.lang.Long.parseLong(Long.java:680)
  at java.base/java.lang.Integer.parseUnsignedInt(Integer.java:835)
  at java.base/java.lang.Integer.parseUnsignedInt(Integer.java:929)
  at com.code_intelligence.jazzer.api.Jazzer.getLibFuzzerSeed(Jazzer.java:635)
  at com.code_intelligence.jazzer.api.Jazzer.<clinit>(Jazzer.java:38)
  ... 8 more
```
2022-08-17 19:21:53 +10:00
Paulo Gomes 0b416da224
native go fuzzing: Restrict fuzzer lookup to `*.go` (#8238)
native go fuzzing: Restrict fuzzer lookup to *.go
Projects containing words starting with Fuzz in non-go
files break compile_native_go_fuzzer with the error:
sed: -e expression #1, char 15: unknown option to 's'

Signed-off-by: Paulo Gomes <pjbgf@linux.com>

Signed-off-by: Paulo Gomes <pjbgf@linux.com>
2022-08-16 20:03:34 -07:00
jonathanmetzman c113501247
Upgrade to codeqlv2 to avoid warning (#8272)
* Upgrade to codeqlv2 to avoid warning

* debug
2022-08-16 17:08:56 -07:00
jonathanmetzman 468e1c08ec
[aarch64] Set random_tags=0 (#8201)
Set random_tags=0
2022-08-10 04:08:18 +00:00
jonathanmetzman 29848637e2
Fix bad build check breakage (#8198)
fix
2022-08-09 18:52:46 -04:00
jonathanmetzman f02edd2c9a
Support C/C++ projects on AArch64. (#8184)
Related: #8164
2022-08-09 10:18:06 -04:00
jonathanmetzman a4c1193050
Support building base-runner on aarch64. (#8186)
Related: #8164
2022-08-09 04:10:55 +00:00
jonathanmetzman 97133fd942
[Incomplete] Support building targets with HWAsan (#8190)
Note that these targets still fail immediately.
Related: #8164
2022-08-08 22:57:59 -04:00
Navidem c28d437a4f
Bump introspector (#8153)
* Bump introspector

* include fixes

* Pickup latest changes
2022-08-08 16:53:03 -07:00
jonathanmetzman ac9a50c7a3
Support AArch64 in bad_build_check (#8188)
* Support AArch64 in bad_build_check

Related: #8164

* UNdo uneeded
2022-08-08 19:40:11 -04:00
jonathanmetzman 18bb7080ec
Reduce cores for gdb build to prevent failures (#8166) 2022-08-08 17:47:12 -04:00
jonathanmetzman 25591c884b
Don't install cmake when building clang (#8163) 2022-08-05 14:11:24 -04:00
jonathanmetzman 05243bb9c6
[NFC] Add initial support for AArch64 (#8165)
Related: https://github.com/google/oss-fuzz/issues/8164
2022-08-05 13:57:43 -04:00
jonathanmetzman 8ddcf0df18
Trial builds for fuzz introspector (#8111)
This will make it easier to test changes to introspector and to infra that affects introspector
2022-08-04 20:22:01 +00:00
jonathanmetzman 2e6e35dd98
Reduce base-builder-debug build time from 18 to 2 minutes (#8144)
This will speed up trial builds noticeably as well.
2022-08-03 16:33:20 -04:00
jonathanmetzman 90d60450aa
Build clang with all available cores. (#8116)
* nproc

* Remove comment
2022-08-01 20:56:55 -04:00
Navidem d8fefb5b76
Bump FI and adjust the path to main.py in compile (#8078)
* Bump FI and adjust the path to main.py in compile

* Fix llvm build script

* Update FI version

* Update FI version
2022-08-01 09:59:21 -07:00
Jonathan Metzman 8d5c72d77a [wycheproof] Support wycheproof in bad_build_check.
Related #8040
2022-07-20 14:45:50 -04:00
jonathanmetzman a1f62a25ff
[wycheproof] Get compilation working (#8037) 2022-07-20 13:26:43 -04:00
jonathanmetzman 0975cbfc0a
Remove build support for dataflow sanitizer. (#7972)
Related: #7964
2022-07-12 15:51:03 +02:00
Catena cyber 74762513ad
infra: have timeout per fuzz target for coverage (#7831)
* infra: have timeout per fuzz target for coverage

As is done for other languages

* ngolo-fuzzing: remove temporary workaround

now that https://github.com/golang/go/issues/53190 is closed

* ngolo-fuzzing: use built go toolchain in its directory

without copying it to /root/.go/

in order to get coverage for std lib in the end

* infra: ability to get coverage for additional golang package

And uses it with ngolo-fuzzing :
ngolo-fuzzing fuzz targets live in a different repository than
the code being fuzzed, and we we want to get the coverage, for
both the fuzz target and the package being fuzzed

* fixup bash unbound

* fixup ngolo-fuzzing only match at beginning for std package

* stricter check for every additional go package
2022-07-07 17:00:39 +02:00
DavidKorczynski cf816c3244
infra: fix per-target coverage html generation (#7927)
* infra: fix per-target coverage html generation

When generating coverage reports for single targets we should not
include all fuzz targets (in the $objects var), but only the object
(binary file) for the given target.

Ref: https://github.com/ossf/fuzz-introspector/issues/340

* coverage: remove potential race condition
2022-06-30 18:06:42 +10:00
Navidem 0fce77ee5f
Bump fuzz introspector (#7881) 2022-06-17 00:49:21 -05:00
Navidem 3ad57541c1
Install gdb 12 from source (#7842)
* Install gdb12 from source

* nit: remove tar file

* nit

* Separate GDB installation and purge libs

* Pass -y to purge

* use remove --purge
2022-06-15 11:09:02 -05:00
jonathanmetzman 1189d2c7f1
Reland #7850 (#7868) 2022-06-15 10:40:10 -05:00
jonathanmetzman 747d86a02d
Revert "infra: let honggfuzz verify crashes" (#7867)
Revert "infra: let honggfuzz verify crashes (#7850)"

This reverts commit d0d88aad6d.
2022-06-15 09:08:03 -04:00
Evgeny Vereshchagin d0d88aad6d
infra: let honggfuzz verify crashes (#7850)
to make it easier to catch issues like
https://github.com/google/honggfuzz/issues/465.

With -V when unreproducible crashes are triggered honggfuzz shows something like
```
[2022-06-10T15:21:12+0000][W][2373157] subproc_checkTimeLimit():532 pid=2374490 took too much time (limit 30 s). Killing it with SIGKILL
Sz:280 Tm:30,021,052us (i/b/h/e/p/c) New:0/0/0/0/0/3, Cur:0/0/0/0/0/591
Launching verifier for HASH: 1b859677dd (iteration: 1 out of 5)
[2022-06-10T15:21:13+0000][E][2373157] fuzz_runVerifier():280 Verifier stack mismatch: (original) 1b859677dd != (new) 0
```
2022-06-15 09:07:27 -04:00
DavidKorczynski a972a93b2a
infra: add proj name to env for fuzz introspector (#7856)
* infra: add proj name to env for fuzz introspector

Depends on https://github.com/ossf/fuzz-introspector/pull/327

Ref: https://github.com/ossf/fuzz-introspector/issues/317

* lint fix

* update introspector commit

Co-authored-by: Navidem <navid.emamdoost@gmail.com>
2022-06-14 15:26:06 -05:00
Navidem 6e146c9132
Bump introspector (#7853) 2022-06-13 12:30:06 -05:00
DavidKorczynski f9b1e71abd
infra: fix env checking in base-builder (#7833)
Ref: https://github.com/google/oss-fuzz/pull/7828#discussion_r893332700
2022-06-09 09:07:23 -04:00
Navidem 291956b501
Set flags to use old pass manger (#7828)
* Set flags to use old pass manger

* nit

* Add comment to Dockerfile

* More informative comment

* nit
2022-06-09 19:39:25 +10:00
Navidem ae83c88a54
Upgrade infra and projects to go1.18 (#7791)
* Replace go get with go install in the scritp

* Remove go get from projects

* Replace gotip with go

* Fix CI

* Add missing dependency for cryptofuzz
2022-06-06 11:31:04 +10:00
Navidem d8a7e45314
Remove unnecessary step in fuzz introspector (#7793)
Remove unncessary step in fuzz introspector
2022-06-01 18:00:22 -05:00
DavidKorczynski dc435d0be5
infra: set fuzz-introspector to work with O0 (#7788)
-O0 will skip fuzz-introspector when -flegacy-pass-manager is used, but
not when the new pass manager is used.
2022-06-01 16:52:21 +01:00
Evgeny Vereshchagin a4befa22a0
[base-runner] no longer fail silently in test_one.py (#7776)
It should make it easier to figure out why exactly
`./infra/helper.py check_build project fuzz-target` fails
by turning
```
INFO: performing bad build checks for /tmp/not-out/tmpa4lph9dr/fuzz-bus-message
ERROR:root:Check build failed.
```
into something like
```
INFO: performing bad build checks for /tmp/not-out/tmpa4lph9dr/fuzz-bus-message
BAD BUILD: /tmp/not-out/tmpa4lph9dr/fuzz-bus-message seems to have either startup crash or exit:
/tmp/not-out/tmpa4lph9dr/fuzz-bus-message -rss_limit_mb=2560 -timeout=25 -seed=1337 -runs=4 < /dev/null
/tmp/not-out/tmpa4lph9dr/fuzz-bus-message: error while loading shared libraries: libcap.so.2: cannot open shared object file: No such file or directory

ERROR:root:Check build failed.
```
2022-05-31 17:07:52 -04:00
DavidKorczynski 1beea533a6
infra: bump fuzz-introspector (#7774)
* infra: bump fuzz-introspector

Bump includes the upgrades:
- calltree overview image improvements:
https://github.com/ossf/fuzz-introspector/pull/284
- UI improvements in calltree page:
https://github.com/ossf/fuzz-introspector/pull/277
- Branch-blocker logic:
https://github.com/ossf/fuzz-introspector/pull/269
- Bug fix: https://github.com/ossf/fuzz-introspector/pull/261

* bump
2022-05-31 11:56:25 -05:00
DavidKorczynski a615678670
infra: use only valid targets for python coverage (#7746)
* infra: use only valid targets for python coverage

Some python coverage reports gets clobbered because non-fuzz targets are
included in FUZZ_TARGETS. The consequence of this is that some reports
will have erroneous data. This commit ensures only valid targets are
used when running coverage, which consequently fixes the reports.

* Move executable logic into python fuzzer builder instead
2022-05-26 14:52:30 +10:00
Navidem c5be869e4e
Add commands to collect branch coverage (#7709)
* Add commands to collect branch coverage

* Add -g flag

* Switch branch coverage option placement

* Set guarding env variable

Co-authored-by: Oliver Chang <oliverchang@users.noreply.github.com>
2022-05-24 16:10:38 +10:00
DavidKorczynski 7794106856
infra: fix python coverage (#7711)
The current implementation will append rather than overwrite
coverage_wrapper.py which holds the coverage stub. The effect of the
appending is that the coverage_wrapper.py will include X amount of
coverage stubs when a project has X amount of fuzzers. We just need a
single coverage stub at the top of each fuzzer. This ensure we only add
a single coverage stub.
2022-05-17 11:51:54 +10:00
DavidKorczynski 32c48a630f
infra: bump fuzz-introspector (#7694)
* infra: bump fuzz-introspector

This adds a feature where multiple focus functions are output by fuzz-introspector. 

Can confirm the fuzz-introspector oss-fuzz integration tests (https://github.com/ossf/fuzz-introspector/tree/main/oss_fuzz_integration#testing-before-bumping-oss-fuzz) pass.

* update commit

Co-authored-by: Oliver Chang <oliverchang@users.noreply.github.com>
2022-05-11 21:20:56 +01:00
DavidKorczynski a2e63fdf7d
infra: enable run_fuzzer to accept multiple options (#7697)
The current run_fuzzer will fail when multiple libfuzzer options are
specificed in a .options file. Currently, if there are multiple options
then none of the options will be used, but rather an issue about a
"binary operator expected" will occur. One implication of this is that
check_build fails to use it and may, therefore, report erroneously. This
fixes it by enabling the use of zero, one and many libfuzzer options.
2022-05-11 16:32:00 +10:00
DavidKorczynski c041353712
infra: upgrade pyinstaller from 4.1 to 5.0.1 (#7680)
This is needed to pack projects e.g. numpy.

Co-authored-by: jonathanmetzman <31354670+jonathanmetzman@users.noreply.github.com>
2022-05-09 16:06:20 -04:00
DavidKorczynski 74438324f8
infra: fix python coverage (#7641)
* infra: fix python coverage

The python coverage has not started working on oss-fuzz.com yet. This is
an effort to fix this.

* add logs and stats files

* log stderr too
2022-05-03 20:41:29 +10:00
DavidKorczynski c91456e053
fuzz-introspector: bump (#7640)
Changes:
- coverage fix https://github.com/ossf/fuzz-introspector/issues/249
- UI updates to make the function table smaller by default, but some buttons for enabling the user to specify which columns to display https://github.com/ossf/fuzz-introspector/issues/239 
- fixed a bug in navigating calltree: https://github.com/ossf/fuzz-introspector/issues/232

This has been tested on several projects, including jsoncpp and htslib.
2022-05-02 11:32:51 -05:00
DavidKorczynski c351603b3d
infra: enable argument passing to compile_python_fuzzer (#7628)
* infra: enable argument passing to compile_python_fuzzer

Enable passing arguments to pyinstaller. This is used by, e.g. Django.

Ref:
0cb820e5af (commitcomment-72063587)

* only unzip real files
2022-04-28 09:38:43 +01:00
DavidKorczynski c7b3970f87
fuzz-introspector: bump (#7636)
Fixes https://github.com/google/oss-fuzz/issues/7635
2022-04-28 01:18:41 +01:00
jonathanmetzman aab23a8fb8
Roll AFL++ (#7595)
* Roll AFL++

* Adapt to us-central1

* fix

* test faster

* All projects

* all

* All

* fix

* start small

* bigger

* print dbg

* handle sanitizers

* handle sanitizers

* all means all

* handle flake

* Fix

* fix
2022-04-26 23:46:15 +00:00
DavidKorczynski 334c2be147
fuzz-introspector: bump (#7605) 2022-04-26 13:21:57 +01:00
DavidKorczynski d70fcb5e1b
infra: fix python coverage logic (#7616)
* infra: write python coverage to correct folder

Ref: https://github.com/google/oss-fuzz/issues/7615

* fix issues when atheris does not exit gracefully
2022-04-25 23:27:10 +01:00
DavidKorczynski 15cd77a60e
infra: fix base-clang temporarily (#7618) 2022-04-25 09:29:35 +01:00
DavidKorczynski dbdcb8fb9a
infra: fix fuzz-introspector linker flags (#7583)
Moves -fuse-ld=gold to compile flags and removes -flto from linker
flags.

Should fix a number of the projects
https://github.com/google/oss-fuzz/issues/7540#issuecomment-1101823684

Ref:
https://github.com/google/oss-fuzz/issues/7540#issuecomment-1101868436

Ref:
https://github.com/google/oss-fuzz/issues/7540#issuecomment-1101882757
2022-04-20 18:01:00 +01:00
DavidKorczynski f9600a44e3
fuzz-introspector: remove use of LDFLAGS (#7573)
* fuzz-introspector: remove use of LDFLAGS

The use of LDFLAGS does not really follow the policy of OSS-Fuzz. This
moves the linker flags into the sanitizer flags.

Ref:
https://github.com/google/oss-fuzz/issues/7540#issuecomment-1094500094
2022-04-15 19:13:24 +01:00
DavidKorczynski bdc95aac20
fuzz-introspector: bump (#7546)
Main changes in fuzz-introspector:
- reduce logging in fuzz-introspector as some oss-fuzz build logs are
huge.
- insert links in the html reports to the newly added doc.
2022-04-11 18:04:49 +01:00
DavidKorczynski 00132fa740
fuzz-introspector: force use of llvm-nm instead of nm (#7533)
This fixes various current build failures across projects that use nm as
part of their build process.
2022-04-11 18:04:38 +01:00
DavidKorczynski 05be069314
fuzz-introspector: add -lto to ldflags (#7547) 2022-04-11 10:00:45 +01:00
DavidKorczynski 0cb820e5af
infra: add Python coverage support (#7298)
* infra: add Python coverage support

* update python coverage helper script

* nits

* switch from commands to python

* pin coverage package

* switch to single quote strings throughout

* nit

* fix style

* fix style

* fix ci

* fix ci
2022-04-06 10:31:34 -04:00
DavidKorczynski 8bad6b2c75
infra: make per-target coverage reports readable (#7505)
Similar to the main report make all target reports readable. This is
currently a blocker on fuzz-introspector for running locally.
2022-04-04 23:39:16 +01:00
DavidKorczynski 0bcaec68ab
infra: fuzz-introspector: ensure COVERAGE_URL exists (#7502)
* infra: fuzz-introspector: ensure COVERAGE_URL exists

This is to make sure fuzz-introspector can run in local builds.

Ref:
https://github.com/ossf/fuzz-introspector/issues/48#issuecomment-1087513497
Ref:
https://github.com/ossf/fuzz-introspector/issues/67#issuecomment-1087518856

* refactor fuzz-introspector command generation

This is to shorten the long line that runs fuzz-introspector and also in
anticipation that down the line we will have more oss-fuzz specific
commands in fuzz-introspector
2022-04-04 23:38:37 +01:00
DavidKorczynski 4ff34a956e
infra: fuzz-introspector updates and bump (#7497)
* infra: remove use of git_repo_url to fuzz-introspector

* libarchive,fluent-bit: add fuzz-introspector exclusion config

* fuzz-introspector: bump

Co-authored-by: Oliver Chang <oliverchang@users.noreply.github.com>
2022-04-04 11:35:58 +10:00
Navidem 10fdf2878d
To include latest introspector changes (#7494) 2022-04-03 14:08:09 -04:00
Fabian Meumertzheim 4aeb753191
Revert "Pin Jazzer to older revision. (#7484)" (#7486)
This reverts commit 86a4d9d11f.

The build issue has been fixed on Jazzer's main branch.
2022-04-01 15:04:34 +11:00
Oliver Chang 221b39181a
Bump introspector (#7482) 2022-03-31 17:13:04 +11:00
Oliver Chang 86a4d9d11f
Pin Jazzer to older revision. (#7484) 2022-03-31 15:54:50 +11:00
DavidKorczynski fe93ec53c8
infra: bump fuzz-introspector (#7471)
Following fix of https://github.com/ossf/fuzz-introspector/issues/154
2022-03-29 16:33:51 -07:00
Navidem b748536b39
Revert "infra: fuzz-introspector: force no inline (#7413)" (#7455)
* Revert "infra: fuzz-introspector: force no inline (#7413)"

This reverts commit ba7f8eb9bf.

* put back no function inlining
2022-03-24 18:58:45 -07:00
jonathanmetzman 60fc4ee9b5
Remove unused debian-testing image (#7418) 2022-03-22 09:42:54 -04:00
DavidKorczynski ba7f8eb9bf
infra: fuzz-introspector: force no inline (#7413)
Ref: https://github.com/ossf/fuzz-introspector/pull/136
2022-03-22 10:18:09 +00:00
DavidKorczynski 0e9243ddc2
infra: fuzz-introspector: bump (#7419) 2022-03-22 17:00:32 +11:00
jonathanmetzman 2e60f2dde9
[infra] Add test script for infra changes (#7388)
This adds ci.py a script that can be used to test changes to the base-images.
The script does the following:
1. Builds and pushes a test image for each base image. This will be used in step 3.
2. Finds which projects are buildable based on user specifications of: projects, build type (e.g. sanitizer/fuzzing engine) and which of these succeeded in production.
3. Submits builds for those projects.
4. Polls GCB to check which builds succeeded and which failed.
5. Returns 0 if all builds succeeded.

Currently this script is only useful to run locally.
Related: https://github.com/google/oss-fuzz/issues/7145
2022-03-21 15:17:07 -04:00
Oliver Chang 88cb334679
Pin Go back to 1.17 (#7409)
A bit more work is required to upgrade to Go 1.18
2022-03-21 02:46:15 +00:00
jonathanmetzman 2d0ea3a65b
[base-builder-swift] Reduce size 1.6GB and misc improvements (#7387)
1. Reduce image size by 1.6GB by deleting unneeded directory containing
swift tools that were already copied to /usr.
2. Use apt-get instead of apt to avoid warnings.
2022-03-16 09:25:24 +11:00
Navidem d7c2eca4d4
Bump to include latest changes (#7375)
* Bump to include latest changes

* covering latest commit

* another bump
2022-03-15 21:35:12 +00:00
Oliver Chang bb7d745884
Pin LLVM revision used for Swift llvm-symbolzier patch. (#7384) 2022-03-15 10:34:10 +00:00
Oliver Chang 6601b45b1f
Generate per-target coverage reports. (#7369)
* Generate per-target coverage reports.

First part of #7015.

The Cloud Build changes to upload these will come in another PR.

* comment
2022-03-14 10:13:15 +11:00
Fabian Meumertzheim 4261d526ad
[infra] Serve raw JaCoCo coverage reports (#7270)
Both the JaCoCo .exec file and the XML report are very useful for
automated analysis of coverage data and IDE integration, so serve them
just like the HTML report.
2022-03-10 13:16:55 -05:00
Navidem 8b6a553a12
Pass FuzzIntrospector environment variables to bazel builds (#7367)
* Using bazelrc to pass env vars

* place bazelrc in /root/.bazelrc

* Setting spawn strategy to standalone

* undo changes in Dockerfile
2022-03-08 02:15:47 +00:00
asraa 2a72988f71
handle wildcard label applying to all fuzz targets in a project (#7359)
Signed-off-by: Asra Ali <asraa@google.com>
2022-03-04 14:59:08 +11:00
Navidem e7eb519e22
move environment var to Dockerfile to make it visible to bazel builds and bump FI (#7356) 2022-03-03 16:19:09 +11:00
Navidem b75084c74c
update compile to reflect changes in introspector code (#7341) 2022-03-01 15:57:51 +11:00
Navidem 95bb7013b2
bump introspector commit and initialize the environment variable used by introspector pass (#7340) 2022-02-28 18:56:56 -08:00
Navidem 9bf510557c
bump introspector commit to fix some bugs, and adjust the patch (#7322) 2022-02-24 10:07:38 +11:00
jonathanmetzman 94898eb74e
[base-clang] Add warning not to upgrade (#7279)
* [base-clang] Add warning not to upgrade

* undo
2022-02-15 16:33:35 -05:00
Oliver Chang 598198bdde
Use Go 1.18 beta 2 for base-runner to fix coverage reports. (#7282)
Fixes #7281.
2022-02-15 14:26:18 +11:00
Navidem f72ca0fd09
Bump to fix more dict keyErrors (#7267) 2022-02-13 12:34:37 +00:00
AdamKorcz ad659bfa2f
native go fuzzing: Remove installation of dependencies (#7259) 2022-02-10 11:50:37 +00:00
Navidem 497c97d8db
Bump introspector to fix dict keyError (#7260) 2022-02-10 03:24:18 +00:00
Navidem 59d4b37a84
bump introspector version to fix a bug leading to build failures (#7251) 2022-02-09 10:23:24 +11:00
AdamKorcz 4fdde05cff
[draft] Integrate native go fuzzing (#7055) 2022-02-09 06:57:00 +11:00
Navidem c1156260e1
Bump introspector to fix some bugs (#7247) 2022-02-08 01:21:59 +00:00
Khaled Yakdan 59d804ca19
Add Code Intelligence go114-fuzz-build fork (#7221)
The patched Go versions adds a new runtime function to register
8bit counters when initializing the fuzz target. This is needed to
register those counters with libfuzzer and get real edge coverage.
This change is meant to be a temporary change until the Go patches are
accepted upstream. Then, we will create a pull request for
go114-fuzz-build
2022-02-07 22:51:36 +11:00
Dongge Liu 35d3c728c3
Base builder go experimental (#7240)
* Remove trailing lines

* Correct copyright year

* Avoid cding & using relative directory.

* To include go-codeintelligencetesting to auto-checks.
2022-02-04 04:21:55 +00:00
Oliver Chang 186ec1b407
Fix codeintelligencetesting image. (#7223)
- Include ossfuzz_coverage_runner.go again.
2022-02-02 15:15:02 +11:00
Oliver Chang fb6e9fdfef
Fuzz introspector build fixes. (#7211)
- Point `compile` to the right `fuzz-introspector` location (since it's no longer checked out in $SRC).
- Rename build tag to "introspector" to be more consistent with other
  tags.
- Fix bad merge in deploy.sh script.
- Add introspector setup to project sync.
- Enable more logging for project sync cron.
2022-02-01 07:56:59 +11:00
jonathanmetzman 3610c9d695
Clean up build infra issues. (#7199)
* Clean up build infra issues.

0. Don't clone fuzz-introspector to /src since it breaks builds.
1. Install packages in python install script properly. Previously
pip install atheris>=2.0.6 was interpreted as "redirect the output
from pip install atheris" to the file "=2.0.6".
3. Clean up some miscellanious issues.

* Include removal
2022-01-31 11:57:12 +11:00
Dongge Liu 3ad503f001
Integrating CodeIntelligenceTesting Go (#7191)
Integrating *CodeIntelligenceTesting* `Go` to support more informative instrumentation (for [this issue](https://github.com/google/oss-fuzz/issues/7164)):
1. A script to install the new `Go`
    * Bootstrap from the existing `Go`
    * Install `Go` from [CodeIntelligenceTesting](https://github.com/CodeIntelligenceTesting/go/tree/dev.libfuzzer.18)
    * Skip the built-in test case in CodeIntelligenceTesting because they take too long and one of them erroneously fails.
2. Create a new directory & `Dockerfile` dedicated to the new Go 
3. Add the new base directory name to [base_images.py](https://github.com/google/oss-fuzz/blob/master/infra/build/functions/base_images.py)
2022-01-31 11:47:36 +11:00
Navidem 1f7c15061f
Adjust to coverage reports dir renaming (#7200) 2022-01-31 11:39:11 +11:00
Fabian Meumertzheim ca8b881691
Revert "Pin Jazzer to pre-Bazel 5 update (#7192)" (#7194)
This reverts commit d3d1e1f838.

Also fixes a typo in the Java runtime version specifier for Bazel 5:
localjdk_15 should have been local_jdk_15, see also
https://github.com/bazelbuild/bazel/issues/7849#issuecomment-1022932563
2022-01-27 09:24:32 -05:00
Navidem ad1ecf0c59
Make a separate dir to store covreport files (#7189)
* Make a separate dir to store covreport files used later by fuzz introspector

* Renaming dirs
2022-01-27 13:44:58 +11:00
Oliver Chang d3d1e1f838
Pin Jazzer to pre-Bazel 5 update (#7192)
* Update install_java.sh

* Update install_java.sh
2022-01-27 11:11:45 +11:00