mirror of
https://github.com/msgpack/msgpack-c.git
synced 2025-04-18 23:41:09 +02:00
commit
c0708dbcba
@ -38,7 +38,7 @@ void UnpackPackFuzzerRegressionTest(const std::string& fpath) {
|
||||
std::vector<char> bytes(length);
|
||||
in.read(bytes.data(), bytes.size());
|
||||
BOOST_REQUIRE(in);
|
||||
BOOST_REQUIRE_EQUAL(0, FuzzerTestOneInput(reinterpret_cast<const uint8_t *>(bytes.data()), bytes.size()));
|
||||
BOOST_REQUIRE_EQUAL(0, LLVMFuzzerTestOneInput(reinterpret_cast<const uint8_t *>(bytes.data()), bytes.size()));
|
||||
}
|
||||
|
||||
boost::unit_test::test_suite* init_unit_test_suite(int /*argc*/, char* /*argv*/[])
|
||||
|
@ -1,6 +1,10 @@
|
||||
#include <msgpack.hpp>
|
||||
|
||||
extern "C" int FuzzerTestOneInput(const uint8_t *data, size_t size) {
|
||||
// The function's signature must NOT be changed since other projects rely on it:
|
||||
// - libFuzzer
|
||||
// - AFL++
|
||||
// - Google's oss-fuzz (uses the previous two ones)
|
||||
extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
|
||||
try {
|
||||
// NOTE(derwolfe): by default the limits are set at 2^32-1 length. I'm
|
||||
// setting these at far smaller values to avoid OOMs
|
||||
|
@ -5,5 +5,5 @@
|
||||
|
||||
BOOST_AUTO_TEST_CASE(works)
|
||||
{
|
||||
BOOST_CHECK_EQUAL(0, FuzzerTestOneInput(MSGPACK_NULLPTR, 0));
|
||||
BOOST_CHECK_EQUAL(0, LLVMFuzzerTestOneInput(MSGPACK_NULLPTR, 0));
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user