diff options
| author | 2022-12-27 23:08:17 +0000 | |
|---|---|---|
| committer | 2022-12-27 23:08:17 +0000 | |
| commit | 6d2dbfaaa53aafa2ae861b01d9103a2b2fb04404 (patch) | |
| tree | 2659aa12a0d2261a5c044f1336a4ed6168389621 /libs | |
| parent | 5d437ec2449ea7e4e4254990ac7d5512f00f24f9 (diff) | |
| parent | 60c292a57d82dd6374c1b35ec97ef33438c21a04 (diff) | |
Merge "binder_rpc_fuzzer: limit connections" am: 139344295c am: 60c292a57d
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2368629
Change-Id: Ifbf55f76369fa07a3032475758ccdafd75eccf3b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
Diffstat (limited to 'libs')
| -rw-r--r-- | libs/binder/tests/rpc_fuzzer/main.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/libs/binder/tests/rpc_fuzzer/main.cpp b/libs/binder/tests/rpc_fuzzer/main.cpp index f68a56144d..b8ae84d5c0 100644 --- a/libs/binder/tests/rpc_fuzzer/main.cpp +++ b/libs/binder/tests/rpc_fuzzer/main.cpp @@ -133,8 +133,13 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { bool hangupBeforeShutdown = provider.ConsumeBool(); + // b/260736889 - limit arbitrarily, due to thread resource exhaustion, which currently + // aborts. Servers should consider RpcServer::setConnectionFilter instead. + constexpr size_t kMaxConnections = 1000; + while (provider.remaining_bytes() > 0) { - if (connections.empty() || provider.ConsumeBool()) { + if (connections.empty() || + (connections.size() < kMaxConnections && provider.ConsumeBool())) { base::unique_fd fd(TEMP_FAILURE_RETRY(socket(AF_UNIX, SOCK_STREAM | SOCK_CLOEXEC, 0))); CHECK_NE(fd.get(), -1); CHECK_EQ(0, |