diff options
-rw-r--r-- | projects/poppler/Dockerfile | 1 | ||||
-rw-r--r-- | projects/poppler/pdf_fuzzer.cc | 55 |
2 files changed, 0 insertions, 56 deletions
diff --git a/projects/poppler/Dockerfile b/projects/poppler/Dockerfile index a6e56288..4ae1fa6e 100644 --- a/projects/poppler/Dockerfile +++ b/projects/poppler/Dockerfile @@ -37,5 +37,4 @@ RUN git clone --depth 1 https://github.com/mozilla/pdf.js pdf.js && \ rm -rf pdf.js ADD https://raw.githubusercontent.com/google/fuzzing/master/dictionaries/pdf.dict $SRC/poppler.dict WORKDIR $SRC/poppler -COPY *.cc $SRC/fuzz/ COPY build.sh $SRC/ diff --git a/projects/poppler/pdf_fuzzer.cc b/projects/poppler/pdf_fuzzer.cc deleted file mode 100644 index 0f158bd8..00000000 --- a/projects/poppler/pdf_fuzzer.cc +++ /dev/null @@ -1,55 +0,0 @@ -/* -# Copyright 2018 Google Inc. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -################################################################################ -*/ - -#include <cstdint> - -#include <poppler-destination.h> -#include <poppler-global.h> -#include <poppler-document.h> -#include <poppler-page.h> -#include <poppler-page-renderer.h> - -static void nop_func(const std::string& msg, void*) {}; - -extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { - poppler::set_debug_error_function(nop_func, nullptr); - - poppler::document *doc = poppler::document::load_from_raw_data((const char *)data, size); - if (!doc || doc->is_locked()) { - delete doc; - return 0; - } - doc->metadata(); - doc->create_destination_map(); - doc->embedded_files(); - doc->fonts(); - - poppler::page_renderer r; - for (int i = 0; i < doc->pages(); i++) { - poppler::page *p = doc->create_page(i); - if (!p) { - continue; - } - r.render_page(p); - p->text_list(poppler::page::text_list_include_font); - delete p; - } - - delete doc; - return 0; -} |