> What exactly do you mean by the test case. What I mean is "What should be
> the contents inside the folder specified with "-i" option.
To quote section 5 of the README:
"To operate correctly, the fuzzer requires one or more starting file that
contains a good example of the input data normally expected by the targeted
application. There are two basic rules:
- Keep the files small. Under 1 kB is ideal, although not strictly necessary.
For a discussion of why size matters, see perf_tips.txt.
- Use multiple test cases only if they are functionally different from
each other. There is no point in using fifty different vacation photos
to fuzz an image library.
You can find many good examples of starting files in the testcases/ subdirectory
that comes with this tool."
> What if the tool accepts some external inputs (for example a tool which can interact with the user taking in multiple inputs)
You need to select the input you want to test, or - for more advanced
users - some way to intelligently split one input into several data
streams.
> It would be great with an example like "how to fuzz the "grep" utility in
> Linux".
For something like grep, assuming you're interested in its ability to
cope with malformed files, you can just use -i testcases/others/text/
It probably won't find anything interesting, though.
Cheers,
/mz