fhmtgen_fuzzer.cc 740 B

123456789101112131415161718192021222324252627282930313233
  1. #include "leptfuzz.h"
  2. extern "C" int
  3. LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
  4. if(size<3) return 0;
  5. leptSetStdNullHandler();
  6. PIX *pixs_payload = pixReadMemSpix(data, size);
  7. if(pixs_payload == NULL) return 0;
  8. l_int32 i, nsels;
  9. char *selname;
  10. SEL *sel;
  11. SELA *sela;
  12. PIX *pix_pointer_payload, *return_pix;
  13. sela = selaAddHitMiss(NULL);
  14. nsels = selaGetCount(sela);
  15. pix_pointer_payload = pixCopy(NULL, pixs_payload);
  16. for (i = 0; i < nsels; i++) {
  17. sel = selaGetSel(sela, i);
  18. selname = selGetName(sel);
  19. return_pix = pixHMTDwa_1(NULL, pix_pointer_payload, selname);
  20. pixDestroy(&return_pix);
  21. }
  22. pixDestroy(&pix_pointer_payload);
  23. pixDestroy(&pixs_payload);
  24. selaDestroy(&sela);
  25. return 0;
  26. }