Skip to content

Commit a1a46c3

Browse files
authored
Prevent timeout fault running PatternLauoutFuzzer (#480)
1 parent 0eac25d commit a1a46c3

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

src/fuzzers/cpp/PatternParserFuzzer.cpp

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,12 @@
4343
#include <log4cxx/pattern/throwableinformationpatternconverter.h>
4444
#include <log4cxx/pattern/threadusernamepatternconverter.h>
4545

46+
namespace
47+
{
48+
const int MaximumLoggerNameByteCount = 100;
49+
const int MaximumMessageByteCount = 10000;
50+
const int MaximumPatternByteCount = 10000;
51+
}
4652
using namespace log4cxx;
4753
using namespace log4cxx::helpers;
4854
using namespace log4cxx::spi;
@@ -107,9 +113,9 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
107113
// will use to create strings from "data".
108114
FuzzedDataProvider fdp(data, size);
109115

110-
std::string loggerStr = fdp.ConsumeRandomLengthString();
111-
std::string content = fdp.ConsumeRandomLengthString();
112-
std::string pattern = fdp.ConsumeRandomLengthString();
116+
std::string loggerStr = fdp.ConsumeRandomLengthString(MaximumLoggerNameByteCount);
117+
std::string content = fdp.ConsumeRandomLengthString(MaximumMessageByteCount);
118+
std::string pattern = fdp.ConsumeRandomLengthString(MaximumPatternByteCount);
113119

114120
LogString contentLogString;
115121
LogString loggerLogString;

0 commit comments

Comments
 (0)