Uploaded image for project: 'Libmongocrypt'
  1. Libmongocrypt
  2. MONGOCRYPT-186

Implement entry points suitable for libfuzzer

    XMLWordPrintableJSON

Details

    • Task
    • Status: Backlog
    • Major - P3
    • Resolution: Unresolved
    • None
    • None
    • C library
    • None

    Description

      As described in MONGOCRYPT-119, implementation of fuzz testing for libmongocrypt is needed. In order to support libfuzzer testing, however, it is necessary to implement one or more suitable entry points. The general requirements are that the program to be fuzzed, rather than a main() function, must have a function with the signature int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) and then be compiled/linked with clang using the flag -fsanitize=address,fuzzer. This may require writing additional functions that support processing a stream of bytes rather than reading from a file. An example patch for implementing suitable entry points for libbson is attached to MONGOCRYPT-119 as are instructions for how to run libfuzzer testing.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              roberto.sanchez@mongodb.com Roberto Sanchez
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: