diff --git a/pkgs/tools/security/boofuzz/default.nix b/pkgs/tools/security/boofuzz/default.nix new file mode 100644 index 00000000000..353758c3d5f --- /dev/null +++ b/pkgs/tools/security/boofuzz/default.nix @@ -0,0 +1,54 @@ +{ lib +, fetchFromGitHub +, python3 +}: + +python3.pkgs.buildPythonApplication rec { + pname = "boofuzz"; + version = "0.4.0"; + + src = fetchFromGitHub { + owner = "jtpereyda"; + repo = pname; + rev = "v${version}"; + sha256 = "4WtTZ2S2rC2XXN0HbiEht9NW0JXcPnpp66AH67F88yk="; + }; + + propagatedBuildInputs = with python3.pkgs; [ + attrs + click + colorama + flask + funcy + future + psutil + pyserial + pydot + six + tornado + ]; + + checkInputs = with python3.pkgs; [ + mock + netifaces + pytest-bdd + pytestCheckHook + ]; + + disabledTests = [ + # Tests require socket access + "test_raw_l2" + "test_raw_l3" + ]; + + pythonImportsCheck = [ + "boofuzz" + ]; + + meta = with lib; { + description = "Network protocol fuzzing tool"; + homepage = "https://github.com/jtpereyda/boofuzz"; + license = with licenses; [ gpl2Plus ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d022b844475..42f07f5ba72 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3818,6 +3818,8 @@ with pkgs; bomutils = callPackage ../tools/archivers/bomutils { }; + boofuzz= callPackage ../tools/security/boofuzz { }; + bsdbuild = callPackage ../development/tools/misc/bsdbuild { }; bsdiff = callPackage ../tools/compression/bsdiff { };