Kaydet (Commit) e80214b4 authored tarafından Caolán McNamara's avatar Caolán McNamara

shrink scrtf fuzzer

Change-Id: I977636eff8a2962ca248287f8733422d635f8559
Reviewed-on: https://gerrit.libreoffice.org/58833
Tested-by: Jenkins
Reviewed-by: 's avatarCaolán McNamara <caolanm@redhat.com>
Tested-by: 's avatarCaolán McNamara <caolanm@redhat.com>
üst b348f1a0
...@@ -29,13 +29,11 @@ $(eval $(call gb_Executable_set_include,scrtffuzzer,\ ...@@ -29,13 +29,11 @@ $(eval $(call gb_Executable_set_include,scrtffuzzer,\
$(eval $(call gb_Executable_use_libraries,scrtffuzzer,\ $(eval $(call gb_Executable_use_libraries,scrtffuzzer,\
$(fuzzer_calc_libraries) \ $(fuzzer_calc_libraries) \
$(fuzzer_core_libraries) \ $(fuzzer_core_libraries) \
pdffilter \
)) ))
$(eval $(call gb_Executable_use_static_libraries,scrtffuzzer,\ $(eval $(call gb_Executable_use_static_libraries,scrtffuzzer,\
findsofficepath \ findsofficepath \
ulingu \ ulingu \
fuzzer_calc \
fuzzerstubs \ fuzzerstubs \
)) ))
......
...@@ -8,36 +8,64 @@ ...@@ -8,36 +8,64 @@
*/ */
#include <tools/stream.hxx> #include <tools/stream.hxx>
#include <vcl/FilterConfigItem.hxx>
#include <com/sun/star/ucb/XContentProvider.hpp>
#include <com/sun/star/ucb/XUniversalContentBroker.hpp>
#include "commonfuzzer.hxx" #include "commonfuzzer.hxx"
#include <config_features.h>
#include <osl/detail/component-mapping.h>
extern "C" {
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*);
}
const lib_to_factory_mapping* lo_get_factory_map(void)
{
static lib_to_factory_mapping map[]
= { { "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 },
{ 0, 0 } };
return map;
}
extern "C" bool TestImportCalcRTF(SvStream& rStream); extern "C" bool TestImportCalcRTF(SvStream& rStream);
extern "C" int LLVMFuzzerInitialize(int* argc, char*** argv) extern "C" int LLVMFuzzerInitialize(int* argc, char*** argv)
{ {
if (__lsan_disable) TypicalFuzzerInitialize(argc, argv);
__lsan_disable();
CommonInitialize(argc, argv);
// initialise unconfigured UCB:
css::uno::Reference<css::ucb::XUniversalContentBroker> xUcb(
comphelper::getProcessServiceFactory()->createInstance(
"com.sun.star.ucb.UniversalContentBroker"),
css::uno::UNO_QUERY_THROW);
css::uno::Sequence<css::uno::Any> aArgs(1);
aArgs[0] <<= OUString("NoConfig");
css::uno::Reference<css::ucb::XContentProvider> xFileProvider(
comphelper::getProcessServiceFactory()->createInstanceWithArguments(
"com.sun.star.ucb.FileContentProvider", aArgs),
css::uno::UNO_QUERY_THROW);
xUcb->registerContentProvider(xFileProvider, "file", true);
if (__lsan_enable)
__lsan_enable();
return 0; return 0;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment