Skip to content

[pull] master from google:master - #160

Merged
pull[bot] merged 3 commits into
threatcode:masterfrom
google:master
Jun 29, 2026
Merged

[pull] master from google:master#160
pull[bot] merged 3 commits into
threatcode:masterfrom
google:master

Conversation

@pull

@pull pull Bot commented Jun 29, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

h-joo and others added 3 commits June 29, 2026 08:13
PiperOrigin-RevId: 939841892
## Summary

The OpenDAL fuzz integration has several issues that prevent effective
fuzzing:

1. **build.sh copies `fuzz_reader` to all output slots** — `fuzz_writer`
binary was never deployed
2. **Repo URL is stale** — `incubator-opendal` was renamed to `opendal`
3. **Unused `.env` files** — fuzz targets now fall back to a local fs
operator automatically (see apache/opendal#7723), so the env-based
service configuration is no longer needed

## Changes

- `build.sh`: loop over actual target names and copy each binary
correctly; add new `fuzz_path` target; remove `.env` file copies
- `Dockerfile`: update git clone URL to `apache/opendal`
- `project.yaml`: update `main_repo`; add `tonghuaroot@gmail.com` to
`auto_ccs`
- Remove `.fs.env` and `.memory.env`

## Evidence

All four OSS-Fuzz targets currently report 0.26% coverage (harness
startup only):
https://introspector.oss-fuzz.com/project-profile?project=opendal

Upstream tracking issue: apache/opendal#7722
#### What

Re-enables the `memory` (MemorySanitizer) sanitizer for
`connectedhomeip`.

MSAN requires every linked object to be instrumented. When
`SANITIZER=memory`, `build.sh` builds an MSAN-instrumented dependency
sysroot (GLib, OpenSSL, zlib, libffi, pcre2) via
`scripts/build/build_msan_sysroot.sh --oss-fuzz` and links the fuzzers
against it. libc++ is **not** rebuilt — OSS-Fuzz's instrumented
`/usr/msan` libc++ is used via `-stdlib=libc++`. This resolves the
GLib-related false positives that previously had MSan disabled here.
Both the legacy libFuzzer targets and the pw_fuzzer/FuzzTest targets
pick up MSAN through the existing env-driven (`$CFLAGS`) build path.

The chip-side support (`scripts/build/build_msan_sysroot.sh --oss-fuzz`
and the fuzz-target wiring) is merged in `project-chip/connectedhomeip`,
so the Dockerfile builds against its `master`.

#### Why the dependency build is in build.sh, not the Dockerfile

The dependencies' `./configure`/meson steps run MSAN-instrumented test
binaries, which require lowered ASLR entropy (`vm.mmap_rnd_bits=28`) and
privilege — both of which the `compile` wrapper provides at build time
but `docker build` cannot.
@pull pull Bot locked and limited conversation to collaborators Jun 29, 2026
@pull pull Bot added the ⤵️ pull label Jun 29, 2026
@pull
pull Bot merged commit 40d1dda into threatcode:master Jun 29, 2026
17 of 18 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants