* Update TensorFlow OSSFuzz people.
Amit leaves Google. Keep the two repositories in sync.
* Update TensorFlow emails (2 projects)
Since I left TF, moving to primary another person in TF Security team.
Also adding another TF Security team member to CC, as well as myself.
Will probably send new updates as new members join :)
This should fix coverage build broken again today. It seems that a
recent change in TF toolchains removed the creation of `org_tensorflow`
but it is likely that this change will be rolled back in the future.
Hence, to keep OSSFuzz working, we conditionally remove this symlink.
It seems that due to some recent change in `BUILD` rules, `bazel`
creates a copy of the code tree under
`bazel-tensorflow/external/org_tensorflow` symlink. However, the tree
contains a `bazel-tensorflow` symlink so we get to an infinite symlink
expansion issue. This breaks coverage build.
The fix is simple: before copying `bazel-tensorflow/external` to
`${OUT}` in coverage builds, remove `org_tensorflow` symlink. This is
not an issue for the coverage build since we copy the entire source tree
to the coverage directory in a previous step.
* Remove manual denylisting in tensorflow
Remove manual denylisting of fuzzing targets using bazel query via tags.
* Add a space in the bazel query.
* Update the tag we should denylist.
* Update the comment.
We are adding a `tf.constant` fuzzer for Python in oss-fuzz. We do not want it to run on oss-fuzz yet until we are confident it works. Sorry for the repeated PRs into the oss-fuzz directory. Working to alleviate this.
Fix the build breakage caused by the AttrValues fuzzer in OSS. The target requires large artifacts to link against which are not optimal for OSS fuzzing.
* Link against `libc++` with proper config in `.bazelrc`
* Add support for `undefined` build, link against proper `clang_rt` library
* Don't rsync in verbose mode.
* Support `undefined` and `memory` sanitizers
* Support more fuzzers than just `libfuzzer`.
* Need to manually install numpy now as it is used in the toolchain
* Handle review
* Remove bazel install since we install bazelisk
* Force symlink python3 -> python
* Refactor build script
* Remove `-stdlib=libc++` as that causes link errors
* Remove `identity_fuzz` as it results in a huge fuzzer. Will work on reducing size and then enable back
* Copy fuzzer to `$OUT`, not move
* Handle coverage support
* Remove dga@google.com as he left Google
* Use python3 as python2 is deprecated
* Need to manually install numpy now as it is used in the toolchain
* Use bazelisk instead of the grep configure -> get Bazel version -> curl hack
* Remove C++11 constraint as TF now builds and uses C++14
* Handle review
* Remove source sed/replace as it is no longer needed
* [presubmit] Enforce language attribute in projectt.yaml to be always set.
* Update documentation, better presubmit check, new project template.
* add docstring to templates.py
* Add example values in the project.yaml template and remove python value for now
* Add "project: c++" to 256 projects
* format
* Add labels and selective_unpack sections to the presubmit check
* fix incorrect auto_ccs format in three projects
* fix nss emails after rebase
The current build rules for TensorFlow take too long and recently they
have been constantly killed. As we are now working on cleaning up the
build, we switched to using new compilers, there is work on making
TensorFlow easier to build, I think it's better to disable the project
for the remainder of the quarter.
Next quarter I'll come back with a better build script and re-enable the
project.
We are changing the location of the maximum/minimum bazel version in the
configure.py script so we need to update the way we're looking for the
version to install.
Breaking commit: 44000ad64a
* Determine Bazel version from configure.py script
* Install Bazel at the version from configure.py
* Don't downgrade Bazel on Dockerfile
* Make sure we were able to install proper Bazel
* Comment update
* Integrate tensorflow with OSSfuzz
* Don't install already installed dependencies
* Add environment variable to disable logging.
Some fuzzers are outputting too much information due to logging and
that's not ok when fuzzing. Use TF_CPP_MIN_LOG_LEVEL envvar to disable
printing of the log messages.
* Remove the environment variable as it is not used at runtime and we have a workaround in the pipeline
* Workaround bazel bug (bazelbuild/bazel#6697)
* Don't compile with -O2, instead remove line causing bazel bug
* Downgrade Bazel to use the last version that TF supports
* Speed-up building by building fuzzers in parallel
* Add corpora and dictionaries