From a646518107097ff64d6d5d26a0fa3e76e98a07f5 Mon Sep 17 00:00:00 2001 From: Caolán McNamara Date: Mon, 23 Oct 2017 16:27:12 +0100 Subject: shrink ppt fuzzer Change-Id: I8873020cb7aad6d067f037d72146a42451977cc3 --- vcl/Executable_pptfuzzer.mk | 1 - vcl/workben/pptfuzzer.cxx | 87 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 87 insertions(+), 1 deletion(-) diff --git a/vcl/Executable_pptfuzzer.mk b/vcl/Executable_pptfuzzer.mk index 395dcf5b04b2..85c8ed3c4358 100644 --- a/vcl/Executable_pptfuzzer.mk +++ b/vcl/Executable_pptfuzzer.mk @@ -34,7 +34,6 @@ $(eval $(call gb_Executable_use_libraries,pptfuzzer,\ $(eval $(call gb_Executable_use_static_libraries,pptfuzzer,\ findsofficepath \ ulingu \ - fuzzer_draw \ fuzzerstubs \ )) diff --git a/vcl/workben/pptfuzzer.cxx b/vcl/workben/pptfuzzer.cxx index 6b22bba50bd8..792cd2f9b6c8 100644 --- a/vcl/workben/pptfuzzer.cxx +++ b/vcl/workben/pptfuzzer.cxx @@ -11,6 +11,93 @@ #include #include "commonfuzzer.hxx" +#include +#include + +extern "C" { +void * emfio_component_getFactory( const char* , void* , void* ); +void * sd_component_getFactory( const char* , void* , void* ); +void * i18npool_component_getFactory( const char* , void* , void* ); +void * ucb_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_drawing_EnhancedCustomShapeEngine_get_implementation( void *, void * ); +void * com_sun_star_drawing_SvxShapeCollection_get_implementation( void *, void * ); +void * SfxDocumentMetaData_get_implementation( void *, void * ); +void * unoxml_component_getFactory( const char* , void* , void* ); +void * com_sun_star_animations_AnimateColor_get_implementation( void *, void * ); +void * com_sun_star_animations_AnimateMotion_get_implementation( void *, void * ); +void * com_sun_star_animations_AnimateSet_get_implementation( void *, void * ); +void * com_sun_star_animations_AnimateTransform_get_implementation( void *, void * ); +void * com_sun_star_animations_Animate_get_implementation( void *, void * ); +void * com_sun_star_animations_Audio_get_implementation( void *, void * ); +void * com_sun_star_animations_Command_get_implementation( void *, void * ); +void * com_sun_star_animations_IterateContainer_get_implementation( void *, void * ); +void * com_sun_star_animations_ParallelTimeContainer_get_implementation( void *, void * ); +void * com_sun_star_animations_SequenceTimeContainer_get_implementation( void *, void * ); +void * com_sun_star_animations_TransitionFilter_get_implementation( void *, void * ); +void * com_sun_star_comp_comphelper_OPropertyBag( void *, void * ); +void * com_sun_star_comp_uui_UUIInteractionHandler_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 }, + { "libsdlo.a", sd_component_getFactory }, + { "libunoxmllo.a", unoxml_component_getFactory }, + { "libi18npoollo.a", i18npool_component_getFactory }, + { "libucb1.a", ucb_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_drawing_EnhancedCustomShapeEngine_get_implementation", com_sun_star_drawing_EnhancedCustomShapeEngine_get_implementation }, + { "com_sun_star_drawing_SvxShapeCollection_get_implementation", com_sun_star_drawing_SvxShapeCollection_get_implementation }, + { "SfxDocumentMetaData_get_implementation", SfxDocumentMetaData_get_implementation }, + { "com_sun_star_animations_AnimateColor_get_implementation", com_sun_star_animations_AnimateColor_get_implementation }, + { "com_sun_star_animations_AnimateMotion_get_implementation", com_sun_star_animations_AnimateMotion_get_implementation }, + { "com_sun_star_animations_AnimateSet_get_implementation", com_sun_star_animations_AnimateSet_get_implementation }, + { "com_sun_star_animations_AnimateTransform_get_implementation", com_sun_star_animations_AnimateTransform_get_implementation }, + { "com_sun_star_animations_Animate_get_implementation", com_sun_star_animations_Animate_get_implementation }, + { "com_sun_star_animations_Audio_get_implementation", com_sun_star_animations_Audio_get_implementation }, + { "com_sun_star_animations_Command_get_implementation", com_sun_star_animations_Command_get_implementation }, + { "com_sun_star_animations_IterateContainer_get_implementation", com_sun_star_animations_IterateContainer_get_implementation }, + { "com_sun_star_animations_ParallelTimeContainer_get_implementation", com_sun_star_animations_ParallelTimeContainer_get_implementation }, + { "com_sun_star_animations_SequenceTimeContainer_get_implementation", com_sun_star_animations_SequenceTimeContainer_get_implementation }, + { "com_sun_star_animations_TransitionFilter_get_implementation", com_sun_star_animations_TransitionFilter_get_implementation }, + { "com_sun_star_comp_comphelper_OPropertyBag", com_sun_star_comp_comphelper_OPropertyBag }, + { "com_sun_star_comp_uui_UUIInteractionHandler_get_implementation", com_sun_star_comp_uui_UUIInteractionHandler_get_implementation }, + { 0, 0 } + }; + + return map; +} + extern "C" bool TestImportPPT(SvStream &rStream); extern "C" int LLVMFuzzerInitialize(int *argc, char ***argv) -- cgit