- Graph-based data model that enables:
- to represent complex data formats and also to mix them
 - complex data manipulations
 - to dissect/absorb existing data
 - generation & mutation fuzzing strategy
 
 - Fuzzing automation framework:
- target abstraction
 - monitoring means based on independant probes
 - replay & logging
 - data manipulation based on operators (objects that implement specific data transformation)
 - scenario infrastructure (for modeling protocol logic)
 - virtual directors
 
 - and so on...
 
- Refer to TODO file
 
- The documentation is available here.
 - In order to generate the documentation from the source, follow these steps:
- go to the folder 
docs/ - execute 
make htmlto generate HTML documentation - execute 
make latexpdfto generate PDF documentation - generated documentation is located in 
docs/build/ 
 - go to the folder 
 
Installation with pipenv:
$ cd <path_to_fuddly>
$ pipenv install   # or pipenv sync (if you want to match exactly the environment
                   # described in fuddly Pipfile.lock)
$ pipenv shell
Refer to the documentation for more information
If fuddly is installed either through pip/pipenv or a package from your distribution:
$ fuddly shell
If fuddly is not installed:
$ python -m fuddly.cli shell
The package test include all unit & integration test cases
of fuddly itself. From the src/ directory, usage is as follows:
To launch all the tests, issue the command:
$ python -m fuddly.test -a
To launch all the tests but the longer ones, issue the command:
$ python -m fuddly.test
To avoid data model specific test cases use the option
--ignore-dm-specificsTo launch a specific test category issue the following command:
$ python -m fuddly.test fuddly.test.<test_package>.<test_module>.<Test_Class>.<test_method>