Two fixes for ghostcript (#2562)

* [ghostscript] Fix ininitialized pointer

Passing an invalid pointer causes a crash in gs_new_instance.

* [ghostscript] Add seed corpus

Use the examples distributed with ghostcript as a seed corpus.
This commit is contained in:
Benjamin Gordon 2019-07-02 08:38:50 -06:00 committed by Abhishek Arya
parent 024f87dcf9
commit 8934ff6f8b
2 changed files with 8 additions and 1 deletions

View File

@ -54,3 +54,10 @@ $CXX $CXXFLAGS $CUPS_LDFLAGS -std=c++11 -I. \
-o "$OUT/gstoraster_fuzzer" \
$CUPS_LIBS \
$LIB_FUZZING_ENGINE bin/gs.a
mkdir -p "$WORK/seeds"
for f in examples/*.{ps,pdf}; do
s=$(sha1sum "$f" | awk '{print $1}')
cp "$f" "$WORK/seeds/$s"
done
zip -j "$OUT/gstoraster_fuzzer_seed_corpus.zip" "$WORK"/seeds/*

View File

@ -37,7 +37,7 @@ static int gs_stdout(void *inst, const char *buf, int len)
static int gs_to_raster_fuzz(const unsigned char *buf, size_t size)
{
int ret;
void *gs;
void *gs = NULL;
/* Mostly stolen from cups-filters gstoraster. */
char *args[] = {