reaver: database on readwrite medium (#25321)

authored by volth and committed by Joachim F 27e8a794 5a17c408

+38 -18
+18 -7
pkgs/tools/networking/reaver-wps-t6x/default.nix
··· 1 - { stdenv, fetchFromGitHub, libpcap, sqlite, pixiewps }: 1 + { stdenv, fetchFromGitHub, libpcap, sqlite, pixiewps, makeWrapper }: 2 2 3 3 stdenv.mkDerivation rec { 4 4 version = "1.5.2"; 5 5 name = "reaver-wps-t6x-${version}"; 6 + confdir = "/var/db/${name}"; # the sqlite database is at "${confdir}/reaver/reaver.db" 6 7 7 8 src = fetchFromGitHub { 8 9 owner = "t6x"; ··· 11 12 sha256 = "0zhlms89ncqz1f1hc22yw9x1s837yv76f1zcjizhgn5h7vp17j4b"; 12 13 }; 13 14 15 + nativeBuildInputs = [ makeWrapper ]; 14 16 buildInputs = [ libpcap sqlite pixiewps ]; 15 17 16 - prePatch = "cd src"; 18 + sourceRoot = "reaver-wps-fork-t6x-v${version}-src/src"; 19 + 20 + configureFlags = "--sysconfdir=${confdir}"; 21 + 22 + installPhase = '' 23 + mkdir -p $out/{bin,etc} 24 + cp reaver.db $out/etc/ 25 + cp reaver wash $out/bin/ 17 26 18 - preInstall = "mkdir -p $out/bin"; 27 + wrapProgram $out/bin/reaver --run "[ -s ${confdir}/reaver/reaver.db ] || install -D $out/etc/reaver.db ${confdir}/reaver/reaver.db" 28 + wrapProgram $out/bin/wash --run "[ -s ${confdir}/reaver/reaver.db ] || install -D $out/etc/reaver.db ${confdir}/reaver/reaver.db" 29 + ''; 19 30 20 - meta = { 31 + meta = with stdenv.lib; { 21 32 description = "Online and offline brute force attack against WPS"; 22 33 homepage = https://github.com/t6x/reaver-wps-fork-t6x; 23 - license = stdenv.lib.licenses.gpl2Plus; 24 - platforms = stdenv.lib.platforms.linux; 25 - maintainer = stdenv.lib.maintainers.nico202; 34 + license = licenses.gpl2Plus; 35 + platforms = platforms.linux; 36 + maintainers = with maintainers; [ nico202 volth ]; 26 37 }; 27 38 }
+20 -11
pkgs/tools/networking/reaver-wps/default.nix
··· 1 - { stdenv, fetchurl, libpcap, sqlite }: 1 + { stdenv, fetchurl, libpcap, sqlite, makeWrapper }: 2 2 3 3 stdenv.mkDerivation rec { 4 - name = "reaver-wps-1.4"; 4 + version = "1.4"; 5 + name = "reaver-wps-${version}"; 6 + confdir = "/var/db/${name}"; # the sqlite database is at "${confdir}/reaver/reaver.db" 5 7 6 8 src = fetchurl { 7 - url = http://reaver-wps.googlecode.com/files/reaver-1.4.tar.gz; 9 + url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/reaver-wps/reaver-${version}.tar.gz"; 8 10 sha256 = "0bdjai4p8xbsw8zdkkk43rgsif79x0nyx4djpyv0mzh59850blxd"; 9 11 }; 10 12 13 + nativeBuildInputs = [ makeWrapper ]; 11 14 buildInputs = [ libpcap sqlite ]; 12 15 13 - prePatch = '' 14 - cd src 15 - ''; 16 + sourceRoot = "reaver-${version}/src"; 17 + 18 + configureFlags = "--sysconfdir=${confdir}"; 19 + 20 + installPhase = '' 21 + mkdir -p $out/{bin,etc} 22 + cp reaver.db $out/etc/ 23 + cp reaver wash $out/bin/ 16 24 17 - preInstall = '' 18 - mkdir -p $out/bin 25 + wrapProgram $out/bin/reaver --run "[ -s ${confdir}/reaver/reaver.db ] || install -D $out/etc/reaver.db ${confdir}/reaver/reaver.db" 26 + wrapProgram $out/bin/wash --run "[ -s ${confdir}/reaver/reaver.db ] || install -D $out/etc/reaver.db ${confdir}/reaver/reaver.db" 19 27 ''; 20 28 21 - meta = { 29 + meta = with stdenv.lib; { 22 30 description = "Brute force attack against Wifi Protected Setup"; 23 31 homepage = http://code.google.com/p/reaver-wps; 24 - license = stdenv.lib.licenses.gpl2Plus; 25 - platforms = stdenv.lib.platforms.linux; 32 + license = licenses.gpl2Plus; 33 + platforms = platforms.linux; 34 + maintainers = with maintainers; [ nico202 volth ]; 26 35 }; 27 36 }