diff options
Diffstat (limited to 'nixpkgs/pkgs/servers/http/apache-modules/mod_evasive/default.nix')
-rw-r--r-- | nixpkgs/pkgs/servers/http/apache-modules/mod_evasive/default.nix | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_evasive/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_evasive/default.nix new file mode 100644 index 000000000000..2b8693f7379d --- /dev/null +++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_evasive/default.nix @@ -0,0 +1,35 @@ +{ lib, stdenv, fetchurl, apacheHttpd }: + +if lib.versionAtLeast (lib.getVersion apacheHttpd) "2.4" then + + throw "mod_evasive is not supported on Apache httpd 2.4" + +else + +stdenv.mkDerivation { + name = "mod_evasive-1.10.1"; + + src = fetchurl { + url = http://www.zdziarski.com/blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz; + sha256 = "0rsnx50rjv6xygbp9r0gyss7xqdkcb0hy3wh9949jf1im8wm3i07"; + }; + + buildInputs = [ apacheHttpd ]; + + buildPhase = '' + export APACHE_LIBEXECDIR=$out/modules + export makeFlagsArray=(APACHE_LIBEXECDIR=$out/modules) + apxs -ca mod_evasive20.c + ''; + + installPhase = '' + mkdir -p $out/modules + cp .libs/mod_evasive20.so $out/modules + ''; + + meta = { + homepage = http://www.zdziarski.com/blog/?page_id=442; + description = "Evasive maneuvers module for Apache to provide evasive action in the event of an HTTP DoS or DDoS attack or brute force attack"; + platforms = stdenv.lib.platforms.linux; + }; +} |