Project: brpc

Language c++
OSS-Fuzz project link
Project repository link
Build status: Fuzzers succeeding: Build log
Build status: Code coverage succeeding: Build log
Build status: Fuzz Introspector succeeding: Build log
Fuzzer count 10
Lines of code 148235
Lines covered 12165
Code coverage 8.21%
Code coverage report Report link
Static reachability 6.85%
Fuzz Introspector report Report link (from 2025-09-17)
Fuzzer Code coverage (lines) Latest Report Comments
fuzz_butil (plot) 5.51% (avg: 5.49%, max: 5.51%) 2025-09-17
fuzz_esp (plot) 3.96% (avg: 3.95%, max: 3.96%) 2025-09-17
fuzz_hpack (plot) 8.53% (avg: 8.48%, max: 8.53%) 2025-09-17
fuzz_http (plot) 5.42% (avg: 5.41%, max: 5.42%) 2025-09-17
fuzz_hulu (plot) 4.28% (avg: 4.27%, max: 4.28%) 2025-09-17
fuzz_json (plot) 7.04% (avg: 7.03%, max: 7.04%) 2025-09-17
fuzz_shead (plot) 4.03% (avg: 4.02%, max: 4.03%) 2025-09-17
fuzz_sofa (plot) 4.29% (avg: 4.27%, max: 4.29%) 2025-09-17
fuzz_uri (plot) 3.98% (avg: 3.98%, max: 3.98%) 2025-09-17

Historical Progression

Per Fuzzer Progression

This section shows graphs for the coverage results per fuzz target over the past 30 days. Included are the coverage percentage, total number of lines, covered number of lines, and the number of coverage inputs.

Functions of interest to fuzz

This section outlines functions that may be of interest to fuzz. They are based on ranking functions that have a lot of complexity but currently exhibit low code coverage. The complexity is calculated based on the function itself as well as the functions called by the given function, i.e. the tree of code that the function triggers.


This is only a minor amount of introspection information available for this project. Please consult the Fuzz Introspector report for more information, e.g. the introspection table of all functions in the target project available here.

Function name Function source file Accumulated cyclomatic complexity Code coverage
brpc::policy::DiscoveryNamingService::GetServers(charconst*,std::vector<brpc::ServerNode,std::allocator<brpc::ServerNode>>*) /src/brpc/src/brpc/policy/discovery_naming_service.cpp 26537 0.0%
brpc::policy::ConsulNamingService::RunNamingService(charconst*,brpc::NamingServiceActions*) /src/brpc/src/brpc/policy/consul_naming_service.cpp 26511 0.0%
brpc::policy::DiscoveryClient::Register(brpc::policy::DiscoveryRegisterParamconst&) /src/brpc/src/brpc/policy/discovery_naming_service.cpp 26432 0.0%
brpc::policy::ConsulNamingService::GetServers(charconst*,std::vector<brpc::ServerNode,std::allocator<brpc::ServerNode>>*) /src/brpc/src/brpc/policy/consul_naming_service.cpp 26418 0.0%
brpc::policy::DiscoveryClient::PeriodicRenew(void*) /src/brpc/src/brpc/policy/discovery_naming_service.cpp 26417 0.0%
brpc::GlobalUpdate(void*) /src/brpc/src/brpc/global.cpp 26350 0.0%
brpc::policy::DiscoveryClient::DoRegister() /src/brpc/src/brpc/policy/discovery_naming_service.cpp 26337 0.0%
brpc::policy::NacosNamingService::GetServers(charconst*,std::vector<brpc::ServerNode,std::allocator<brpc::ServerNode>>*) /src/brpc/src/brpc/policy/nacos_naming_service.cpp 26107 0.0%
brpc::policy::GetOrNewDiscoveryChannel() /src/brpc/src/brpc/policy/discovery_naming_service.cpp 26019 0.0%
brpc::policy::NewDiscoveryChannel() /src/brpc/src/brpc/policy/discovery_naming_service.cpp 26017 0.0%