From 1bd148495378d811f33a0ff26dc82165bbe961ac Mon Sep 17 00:00:00 2001 From: Caolán McNamara Date: Mon, 23 Oct 2017 10:26:57 +0100 Subject: shrink rtf fuzzer Change-Id: I69fbac6ada653b2cacfdf80ce2772dc253fc3075 --- vcl/Executable_rtffuzzer.mk | 1 - vcl/workben/rtffuzzer.cxx | 51 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 51 insertions(+), 1 deletion(-) diff --git a/vcl/Executable_rtffuzzer.mk b/vcl/Executable_rtffuzzer.mk index 2e7a3429e365..28f0a3afe676 100644 --- a/vcl/Executable_rtffuzzer.mk +++ b/vcl/Executable_rtffuzzer.mk @@ -34,7 +34,6 @@ $(eval $(call gb_Executable_use_libraries,rtffuzzer,\ $(eval $(call gb_Executable_use_static_libraries,rtffuzzer,\ findsofficepath \ ulingu \ - fuzzer_writer \ fuzzerstubs \ )) diff --git a/vcl/workben/rtffuzzer.cxx b/vcl/workben/rtffuzzer.cxx index 88f9b48c8c80..028efda90351 100644 --- a/vcl/workben/rtffuzzer.cxx +++ b/vcl/workben/rtffuzzer.cxx @@ -11,6 +11,57 @@ #include #include "commonfuzzer.hxx" +#include +#include + +extern "C" { +void * emfio_component_getFactory( const char* , void* , void* ); +void * i18npool_component_getFactory( const char* , void* , void* ); + +void * com_sun_star_i18n_LocaleDataImpl_get_implementation( void *, void * ); +void * com_sun_star_i18n_BreakIterator_Unicode_get_implementation( void *, void * ); +void * com_sun_star_i18n_BreakIterator_get_implementation( void *, void * ); +void * com_sun_star_comp_framework_Desktop_get_implementation( void *, void * ); +void * com_sun_star_i18n_CharacterClassification_Unicode_get_implementation( void *, void * ); +void * com_sun_star_i18n_CharacterClassification_get_implementation( void *, void * ); +void * com_sun_star_i18n_NativeNumberSupplier_get_implementation( void *, void * ); +void * com_sun_star_i18n_NumberFormatCodeMapper_get_implementation( void *, void * ); +void * com_sun_star_i18n_Transliteration_get_implementation( void *, void * ); +void * com_sun_star_comp_Writer_RtfFilter_get_implementation( void *, void * ); +} + +const lib_to_factory_mapping * +lo_get_factory_map(void) +{ + static lib_to_factory_mapping map[] = { + { "libemfiolo.a", emfio_component_getFactory }, + { "libi18npoollo.a", i18npool_component_getFactory }, + { 0, 0 } + }; + + return map; +} + +const lib_to_constructor_mapping * +lo_get_constructor_map(void) +{ + static lib_to_constructor_mapping map[] = { + { "com_sun_star_i18n_LocaleDataImpl_get_implementation", com_sun_star_i18n_LocaleDataImpl_get_implementation }, + { "com_sun_star_i18n_BreakIterator_Unicode_get_implementation", com_sun_star_i18n_BreakIterator_Unicode_get_implementation }, + { "com_sun_star_i18n_BreakIterator_get_implementation", com_sun_star_i18n_BreakIterator_get_implementation }, + { "com_sun_star_comp_framework_Desktop_get_implementation", com_sun_star_comp_framework_Desktop_get_implementation }, + { "com_sun_star_i18n_CharacterClassification_Unicode_get_implementation", com_sun_star_i18n_CharacterClassification_Unicode_get_implementation }, + { "com_sun_star_i18n_CharacterClassification_get_implementation", com_sun_star_i18n_CharacterClassification_get_implementation }, + { "com_sun_star_i18n_NativeNumberSupplier_get_implementation", com_sun_star_i18n_NativeNumberSupplier_get_implementation }, + { "com_sun_star_i18n_NumberFormatCodeMapper_get_implementation", com_sun_star_i18n_NumberFormatCodeMapper_get_implementation }, + { "com_sun_star_i18n_Transliteration_get_implementation", com_sun_star_i18n_Transliteration_get_implementation }, + { "com_sun_star_comp_Writer_RtfFilter_get_implementation", com_sun_star_comp_Writer_RtfFilter_get_implementation }, + { 0, 0 } + }; + + return map; +} + extern "C" bool TestImportRTF(SvStream &rStream); extern "C" int LLVMFuzzerInitialize(int *argc, char ***argv) -- cgit