1{
2 lib,
3 ajpy,
4 buildPythonPackage,
5 cx-oracle,
6 dnspython,
7 fetchPypi,
8 impacket,
9 ipy,
10 mysqlclient,
11 paramiko,
12 psycopg2,
13 pyasn1,
14 pycrypto,
15 pycurl,
16 pyopenssl,
17 pysnmp,
18 pysqlcipher3,
19 pythonOlder,
20}:
21
22buildPythonPackage rec {
23 pname = "patator";
24 version = "1.1.0";
25 format = "setuptools";
26
27 disabled = pythonOlder "3.7";
28
29 src = fetchPypi {
30 inherit pname version;
31 hash = "sha256-BupB/s4HNk6DUxbrHB/onqeS7kL0WsGPZ2jqKUj7DJw=";
32 };
33
34 postPatch = ''
35 substituteInPlace requirements.txt \
36 --replace psycopg2-binary psycopg2
37 '';
38
39 propagatedBuildInputs = [
40 ajpy
41 cx-oracle
42 dnspython
43 impacket
44 ipy
45 mysqlclient
46 paramiko
47 psycopg2
48 pyasn1
49 pycrypto
50 pycurl
51 pyopenssl
52 pysnmp
53 pysqlcipher3
54 ];
55
56 # tests require docker-compose and vagrant
57 doCheck = false;
58
59 meta = with lib; {
60 description = "Multi-purpose brute-forcer";
61 homepage = "https://github.com/lanjelot/patator";
62 license = licenses.gpl2Only;
63 # Still uses cx-oracle which is broken and was replaced by oracledb
64 # https://github.com/lanjelot/patator/issues/234
65 broken = true;
66 };
67}