llvm-project/llvm/unittests/Support
Vlad Tsyrklevich b42db1567c Fix llvm-special-case-list-fuzzer regexp exception
Summary:
Original oss-fuzz report:
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3727#c2

The minimized test case that causes this failure:
5b 5b 5b 3d 47 53 00 5b  3d 5d 5b 5d 0a     [[[=GS.[=][].

Note the string "=GS\x00". The failure happens because the code is
searching the string against an array of known collated names. "GS\x00"
is a hit, but since len takes into account an extra NUL byte, indexing
into cp->name[len] goes one byte past it's allocated memory. Fix this to
use a strlen(cp->name) comparison to account for NUL bytes in the input.

Reviewers: pcc

Reviewed By: pcc

Subscribers: hctim, kcc

Differential Revision: https://reviews.llvm.org/D39380

llvm-svn: 316786
2017-10-27 19:15:13 +00:00
..
DynamicLibrary Allow clients to specify search order of DynamicLibraries. 2017-07-12 21:22:45 +00:00
ARMAttributeParser.cpp Re-sort #include lines for unittests. This uses a slightly modified 2017-06-06 11:06:56 +00:00
AlignOfTest.cpp Revert r291503, "Lift the 10-type limit for AlignedCharArrayUnion", and followings. 2017-01-13 01:13:10 +00:00
AllocatorTest.cpp [unittest] Explicitly specify alignment when using BumpPtrAllocator. 2017-03-11 01:24:56 +00:00
ArrayRecyclerTest.cpp
BinaryStreamTest.cpp Remove unused variables. No functionality change. 2017-10-08 21:23:02 +00:00
BlockFrequencyTest.cpp
BranchProbabilityTest.cpp [BPI] Add multiplication by scalar operators to BranchProbability 2017-04-21 03:14:30 +00:00
CMakeLists.txt [ADT] Enable reverse iteration for DenseMap 2017-08-24 23:02:48 +00:00
CachePruningTest.cpp Make the size specification for cache_size_bytes case insensitive. 2017-06-23 17:13:51 +00:00
Casting.cpp [Support] Add support for unique_ptr<> to Casting.h. 2017-04-12 19:59:37 +00:00
Chrono.cpp Support formatv of TimePoint with strftime-style formats. 2017-10-24 08:30:19 +00:00
CommandLineTest.cpp [Support][CommandLine] Add cl::Option::setDefault() 2017-08-28 13:39:43 +00:00
CompressionTest.cpp Re-sort #include lines for unittests. This uses a slightly modified 2017-06-06 11:06:56 +00:00
ConvertUTFTest.cpp
CrashRecoveryTest.cpp Re-sort #include lines for unittests. This uses a slightly modified 2017-06-06 11:06:56 +00:00
DataExtractorTest.cpp Re-sort #include lines for unittests. This uses a slightly modified 2017-06-06 11:06:56 +00:00
DebugTest.cpp Fix unit test in NDEBUG build 2016-12-27 11:07:53 +00:00
EndianStreamTest.cpp Re-sort #include lines for unittests. This uses a slightly modified 2017-06-06 11:06:56 +00:00
EndianTest.cpp
ErrnoTest.cpp Recommit "[Support] Add RetryAfterSignal helper function" 2017-06-29 13:15:31 +00:00
ErrorOrTest.cpp
ErrorTest.cpp [Error] Add an optional error message to cantFail. 2017-08-29 23:29:09 +00:00
FileOutputBufferTest.cpp Untabify. 2017-08-28 06:47:47 +00:00
FormatVariadicTest.cpp Fix FormatVariadicTest with GCC 2017-10-23 18:41:22 +00:00
GlobPatternTest.cpp [Support/GlobPattern] - Do not crash when pattern has characters with int value < 0. 2017-07-31 09:26:50 +00:00
Host.cpp [AArch64] Add basic support for Qualcomm's Saphira CPU. 2017-09-25 14:05:00 +00:00
LEB128Test.cpp Change encodeU/SLEB128 to pad to certain number of bytes 2017-09-15 20:34:47 +00:00
LineIteratorTest.cpp
LockFileManagerTest.cpp
MD5Test.cpp Re-sort #include lines for unittests. This uses a slightly modified 2017-06-06 11:06:56 +00:00
ManagedStatic.cpp [ManagedStatic] Avoid putting function pointers in template args. 2017-05-29 20:56:27 +00:00
MathExtrasTest.cpp MathExtras UnitTest: Assert that isPowerOf2(0) is false. NFC. 2017-07-03 18:42:47 +00:00
MemoryBufferTest.cpp Re-sort #include lines for unittests. This uses a slightly modified 2017-06-06 11:06:56 +00:00
MemoryTest.cpp Untabify. 2017-10-18 13:31:28 +00:00
NativeFormatTests.cpp [Support] Introduce llvm::formatv() function. 2016-11-11 23:57:40 +00:00
ParallelTest.cpp SupportTests: Suppress ParallelTests on mingw for now. Investigating. 2017-05-11 06:35:51 +00:00
Path.cpp Support: Have directory_iterator::status() return FindFirstFileEx/FindNextFile results on Windows. 2017-10-10 22:19:46 +00:00
ProcessTest.cpp [Support] env vars with empty values on windows 2017-08-18 16:55:44 +00:00
ProgramTest.cpp Convenience/safety fix for llvm::sys::Execute(And|No)Wait 2017-09-13 17:03:37 +00:00
RegexTest.cpp Fix llvm-special-case-list-fuzzer regexp exception 2017-10-27 19:15:13 +00:00
ReplaceFileTest.cpp Support: Rewrite Windows implementation of sys::fs::rename to be more POSIXy. 2017-10-06 17:14:36 +00:00
ReverseIterationTest.cpp [unittest/ReverseIteration] Unbreak when compiling with GCC. 2017-09-05 21:27:23 +00:00
ScaledNumberTest.cpp Cosmetic. Added braces to address gcc warning: suggest explicit braces to avoid ambiguous 'else' [-Wdangling-else]. 2017-05-20 00:02:08 +00:00
SourceMgrTest.cpp Add DK_Remark to SMDiagnostic 2017-10-12 23:56:02 +00:00
SpecialCaseListTest.cpp Check special-case-list regex before insertion. 2017-10-24 23:56:12 +00:00
StringPool.cpp
SwapByteOrderTest.cpp Re-sort #include lines for unittests. This uses a slightly modified 2017-06-06 11:06:56 +00:00
TarWriterTest.cpp Fix off-by-one error in TarWriter. 2017-09-27 21:38:02 +00:00
TargetParserTest.cpp [AArch64] Add basic support for Qualcomm's Saphira CPU. 2017-09-25 14:05:00 +00:00
ThreadLocalTest.cpp
ThreadPool.cpp Remove unused lambda captures. NFC 2017-01-13 17:12:16 +00:00
Threading.cpp Rename interface for querying physical hardware concurrency 2016-10-17 14:56:53 +00:00
TimerTest.cpp Timer: Track name and description. 2016-11-18 19:43:18 +00:00
TrailingObjectsTest.cpp Workaround MSVC bug when using TrailingObjects from a template. 2017-02-28 18:05:41 +00:00
TrigramIndexTest.cpp Re-sort #include lines for unittests. This uses a slightly modified 2017-06-06 11:06:56 +00:00
TypeNameTest.cpp
UnicodeTest.cpp
YAMLIOTest.cpp [YAMLTraits] Add filename support to yaml::Input 2017-07-17 11:41:30 +00:00
YAMLParserTest.cpp Re-sort #include lines for unittests. This uses a slightly modified 2017-06-06 11:06:56 +00:00
formatted_raw_ostream_test.cpp Re-sort #include lines for unittests. This uses a slightly modified 2017-06-06 11:06:56 +00:00
raw_ostream_test.cpp Support: Add llvm::center_justify. 2017-07-13 16:11:08 +00:00
raw_pwrite_stream_test.cpp Re-sort #include lines for unittests. This uses a slightly modified 2017-06-06 11:06:56 +00:00
raw_sha1_ostream_test.cpp Re-sort #include lines for unittests. This uses a slightly modified 2017-06-06 11:06:56 +00:00
xxhashTest.cpp Add xxhash to llvm. 2016-09-27 15:45:57 +00:00