load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library") load("@rules_fuzzing//fuzzing:cc_defs.bzl", "cc_fuzz_test") load("@rules_fuzzing//fuzzing/private:binary.bzl", "fuzzing_binary") # buildifier: disable=bzl-visibility cc_library( name = "fuzz_support", srcs = [ "func_conversion.h", "fuzz_support.cc", ], hdrs = ["fuzz_support.h"], visibility = ["//c-toxcore:__subpackages__"], deps = [ "//c-toxcore/toxcore:crypto_core", "//c-toxcore/toxcore:network", "//c-toxcore/toxcore:tox", ], ) cc_library( name = "fuzz_tox", hdrs = ["fuzz_tox.h"], visibility = ["//c-toxcore:__subpackages__"], deps = [":fuzz_support"], ) cc_fuzz_test( name = "bootstrap_fuzz_test", size = "small", srcs = ["bootstrap_harness.cc"], copts = ["-UNDEBUG"], corpus = ["//tools/toktok-fuzzer/corpus:bootstrap_fuzzer"], deps = [ ":fuzz_support", ":fuzz_tox", "//c-toxcore/toxcore:tox", "//c-toxcore/toxcore:tox_dispatch", "//c-toxcore/toxcore:tox_events", ], ) cc_fuzz_test( name = "e2e_fuzz_test", size = "small", srcs = ["e2e_fuzz_test.cc"], copts = ["-UNDEBUG"], corpus = ["//tools/toktok-fuzzer/corpus:e2e_fuzz_test"], data = ["//tools/toktok-fuzzer/init:e2e_fuzz_test.dat"], deps = [ ":fuzz_support", ":fuzz_tox", "//c-toxcore/toxcore:tox", "//c-toxcore/toxcore:tox_dispatch", "//c-toxcore/toxcore:tox_events", ], ) cc_fuzz_test( name = "toxsave_fuzz_test", size = "small", srcs = ["toxsave_harness.cc"], copts = ["-UNDEBUG"], corpus = ["//tools/toktok-fuzzer/corpus:toxsave_fuzzer"], deps = [ ":fuzz_support", "//c-toxcore/toxcore:tox", ], ) cc_binary( name = "protodump", srcs = ["protodump.cc"], copts = ["-UNDEBUG"], deps = [ ":fuzz_support", "//c-toxcore/toxcore:tox", "//c-toxcore/toxcore:tox_dispatch", "//c-toxcore/toxcore:tox_events", "//c-toxcore/toxcore:util", ], ) fuzzing_binary( name = "protodump_bin", testonly = True, binary = ":protodump", engine = "@rules_fuzzing//fuzzing:cc_engine", tags = ["manual"], ) cc_fuzz_test( name = "protodump_reduce", size = "small", srcs = ["protodump_reduce.cc"], copts = ["-UNDEBUG"], deps = [ ":fuzz_support", ":fuzz_tox", "//c-toxcore/toxcore:tox", "//c-toxcore/toxcore:tox_dispatch", "//c-toxcore/toxcore:tox_events", ], )