#include <fuzzer/FuzzedDataProvider.h>
#include <string>
#include "public/fpdf_formfill.h"
#include "testing/fuzzers/pdf_fuzzer_templates.h"
#include "testing/fuzzers/pdfium_fuzzer_helper.h"
class PDFiumXDPFuzzer : public PDFiumFuzzerHelper { … };
struct Tag { … };
const Tag kTagData[]{ … };
std::string CreateObject(int obj_num, const std::string& body) { … }
std::string CreateStreamObject(int obj_num, const std::string& body) { … }
std::string GenXrefEntry(size_t offset) { … }
std::string GenTagBody(const Tag& tag, FuzzedDataProvider* data_provider) { … }
std::string GenXDPPdfFile(FuzzedDataProvider* data_provider) { … }
bool IsValidForFuzzing(const uint8_t* data, size_t size) { … }
extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { … }