]> granicus.if.org Git - icu/commit
ICU-20217 Interprets fuzzer data as UCHar* instead of UTF-8. The conversion
authorNorbert Runge <nrunge@google.com>
Fri, 8 Feb 2019 21:47:52 +0000 (13:47 -0800)
committergnrunge <41129501+gnrunge@users.noreply.github.com>
Wed, 20 Feb 2019 23:22:26 +0000 (15:22 -0800)
commit219730e1674d6940af0dd1cd245b4463e102e637
tree1a4c2f05fd6b304882063e8af2f77e6c5e5a37b1
parentba100f21b507821685afc730643e6e82176c4f33
ICU-20217 Interprets fuzzer data as UCHar* instead of UTF-8. The conversion
from assumed UTF-8 resulted in an extremely large percentage of Unicode
replacement characters in the data passed to the API under test.

ICU-20217 Uses fuzzer generated bytes to make random selection of locales, converters,
etc., replacing the random number generator. This way the fuzzer can control
the selections.

ICU-20217 Minor follow-ups from code review.
Removes fuzzer target break_iterator_utf32_fuzzer which does not perform
anything useful what the regular break iterator fuzzer target already performs.

ICU-20217 Fixes for-loop body.

ICU-20217 Uses am allocated buffer to pass head-truncated fuzzer data to the
API under test. The fuzzer may otherwise not detect buffer underflow.
by

ICU-20217 Typing fix.

ICU-20217 Fixing typing.

ICU-20217 Improve fuzzer targets, move truncated fuzzer data into a
new buffer to prevent that buffer underflow goes undetected.

ICU-20217 Fixes buffer management of fuzzer-provided data.

ICU-20217 Factor in PR review comments.
icu4c/source/test/fuzzer/break_iterator_fuzzer.cc
icu4c/source/test/fuzzer/break_iterator_utf32_fuzzer.cc [deleted file]
icu4c/source/test/fuzzer/converter_fuzzer.cc
icu4c/source/test/fuzzer/fuzzer_utils.h
icu4c/source/test/fuzzer/number_format_fuzzer.cc
icu4c/source/test/fuzzer/ucasemap_fuzzer.cc
icu4c/source/test/fuzzer/unicode_string_codepage_create_fuzzer.cc