From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <gentoo-commits+bounces-1140411-garchives=archives.gentoo.org@lists.gentoo.org> Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id C9B12138350 for <garchives@archives.gentoo.org>; Sun, 26 Jan 2020 16:43:56 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 0F9AEE0870; Sun, 26 Jan 2020 16:43:56 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id CDE19E0870 for <gentoo-commits@lists.gentoo.org>; Sun, 26 Jan 2020 16:43:55 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id A635434E165 for <gentoo-commits@lists.gentoo.org>; Sun, 26 Jan 2020 16:43:54 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 47D0D7B for <gentoo-commits@lists.gentoo.org>; Sun, 26 Jan 2020 16:43:52 +0000 (UTC) From: "Jeroen Roovers" <jer@gentoo.org> To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Jeroen Roovers" <jer@gentoo.org> Message-ID: <1580057028.95c1ff070c3d3a67d6e14734cf7f4f28b641b382.jer@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: net-analyzer/hydra/, net-analyzer/hydra/files/ X-VCS-Repository: repo/gentoo X-VCS-Files: net-analyzer/hydra/files/hydra-9.0-fcommon-gtk.patch net-analyzer/hydra/files/hydra-9.0-fcommon-http.patch net-analyzer/hydra/files/hydra-9.0-fcommon-mod.patch net-analyzer/hydra/files/hydra-9.0-fcommon-mods.patch net-analyzer/hydra/files/hydra-9.0-unneeded-buf.patch net-analyzer/hydra/files/hydra-9.0-vnc.patch net-analyzer/hydra/files/hydra-9999999-fcommon-http.patch net-analyzer/hydra/hydra-9.0-r1.ebuild net-analyzer/hydra/hydra-9999999.ebuild X-VCS-Directories: net-analyzer/hydra/files/ net-analyzer/hydra/ X-VCS-Committer: jer X-VCS-Committer-Name: Jeroen Roovers X-VCS-Revision: 95c1ff070c3d3a67d6e14734cf7f4f28b641b382 X-VCS-Branch: master Date: Sun, 26 Jan 2020 16:43:52 +0000 (UTC) Precedence: bulk List-Post: <mailto:gentoo-commits@lists.gentoo.org> List-Help: <mailto:gentoo-commits+help@lists.gentoo.org> List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org> List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org> List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org> X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: c0e1cc58-0dce-4786-994d-a252d259ada1 X-Archives-Hash: ee9f38cb522f3a7f6556f3708d9df4e6 commit: 95c1ff070c3d3a67d6e14734cf7f4f28b641b382 Author: Jeroen Roovers <jer <AT> gentoo <DOT> org> AuthorDate: Sun Jan 26 16:42:16 2020 +0000 Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org> CommitDate: Sun Jan 26 16:43:48 2020 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=95c1ff07 net-analyzer/hydra: Fix -fno-common issues Package-Manager: Portage-2.3.85, Repoman-2.3.20 Bug: https://bugs.gentoo.org/706416 Signed-off-by: Jeroen Roovers <jer <AT> gentoo.org> .../hydra/files/hydra-9.0-fcommon-gtk.patch | 79 ++++ .../hydra/files/hydra-9.0-fcommon-http.patch | 27 ++ .../hydra/files/hydra-9.0-fcommon-mod.patch | 63 +++ .../hydra/files/hydra-9.0-fcommon-mods.patch | 496 +++++++++++++++++++++ .../hydra/files/hydra-9.0-unneeded-buf.patch | 60 +++ net-analyzer/hydra/files/hydra-9.0-vnc.patch | 11 + .../hydra/files/hydra-9999999-fcommon-http.patch | 27 ++ .../{hydra-9999999.ebuild => hydra-9.0-r1.ebuild} | 39 +- net-analyzer/hydra/hydra-9999999.ebuild | 30 +- 9 files changed, 806 insertions(+), 26 deletions(-) diff --git a/net-analyzer/hydra/files/hydra-9.0-fcommon-gtk.patch b/net-analyzer/hydra/files/hydra-9.0-fcommon-gtk.patch new file mode 100644 index 00000000000..02ebab64e41 --- /dev/null +++ b/net-analyzer/hydra/files/hydra-9.0-fcommon-gtk.patch @@ -0,0 +1,79 @@ +--- a/hydra-gtk/src/callbacks.c ++++ b/hydra-gtk/src/callbacks.c +@@ -66,7 +66,7 @@ int hydra_get_options(char *options[]) { + gchar *tmp; + GString *a; + +- options[0] = HYDRA_BIN; ++ options[0] = hydra_bin; + + /* get the port */ + widget = lookup_widget(GTK_WIDGET(wndMain), "spnPort"); +@@ -599,7 +599,7 @@ int *popen_re_unbuffered(char *command) { + + (void) hydra_get_options(options); + +- execv(HYDRA_BIN, options); ++ execv(hydra_bin, options); + + g_warning("%s %i: popen_rw_unbuffered: execv() returned", __FILE__, __LINE__); + +--- a/hydra-gtk/src/main.c ++++ b/hydra-gtk/src/main.c +@@ -17,12 +17,12 @@ + char *hydra_path1 = "./hydra"; + char *hydra_path2 = "/usr/local/bin/hydra"; + char *hydra_path3 = "/usr/bin/hydra"; +- ++char *hydra_bin; ++GtkWidget *wndMain; ++guint message_id; + + int main(int argc, char *argv[]) { +- extern GtkWidget *wndMain; + int i; +- extern guint message_id; + GtkWidget *output; + GtkTextBuffer *outputbuf; + +@@ -35,22 +35,22 @@ int main(int argc, char *argv[]) { + message_id = 0; + + /* locate the hydra binary */ +- HYDRA_BIN = NULL; ++ hydra_bin = NULL; + for (i = 0; i < argc - 1; i++) { + if (!strcmp(argv[i], "--hydra-path")) { +- HYDRA_BIN = argv[i + 1]; ++ hydra_bin = argv[i + 1]; + break; + } + } + +- if ((HYDRA_BIN != NULL) && (g_file_test(HYDRA_BIN, G_FILE_TEST_IS_EXECUTABLE))) { ++ if ((hydra_bin != NULL) && (g_file_test(hydra_bin, G_FILE_TEST_IS_EXECUTABLE))) { + /* just for obfuscation *g* */ + } else if (g_file_test(hydra_path1, G_FILE_TEST_IS_EXECUTABLE)) { +- HYDRA_BIN = hydra_path1; ++ hydra_bin = hydra_path1; + } else if (g_file_test(hydra_path2, G_FILE_TEST_IS_EXECUTABLE)) { +- HYDRA_BIN = hydra_path2; ++ hydra_bin = hydra_path2; + } else if (g_file_test(hydra_path3, G_FILE_TEST_IS_EXECUTABLE)) { +- HYDRA_BIN = hydra_path3; ++ hydra_bin = hydra_path3; + } else { + g_error("Please tell me where hydra is, use --hydra-path\n"); + return -1; +--- a/hydra-gtk/src/support.h ++++ b/hydra-gtk/src/support.h +@@ -40,6 +40,6 @@ GdkPixbuf *create_pixbuf(const gchar * filename); + void glade_set_atk_action_description(AtkAction * action, const gchar * action_name, const gchar * description); + + +-GtkWidget *wndMain; +-char *HYDRA_BIN; +-guint message_id; ++extern GtkWidget *wndMain; ++extern char *hydra_bin; ++extern guint message_id; diff --git a/net-analyzer/hydra/files/hydra-9.0-fcommon-http.patch b/net-analyzer/hydra/files/hydra-9.0-fcommon-http.patch new file mode 100644 index 00000000000..35b45e07161 --- /dev/null +++ b/net-analyzer/hydra/files/hydra-9.0-fcommon-http.patch @@ -0,0 +1,27 @@ +--- a/hydra-http.c ++++ b/hydra-http.c +@@ -5,7 +5,7 @@ + char *webtarget = NULL; + char *slash = "/"; + char *http_buf = NULL; +-int32_t webport, freemischttp = 0; ++int32_t freemischttp = 0; + int32_t http_auth_mechanism = AUTH_UNASSIGNED; + + int32_t start_http(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp, char *type, ptr_header_node ptr_head) { +@@ -22,6 +22,7 @@ int32_t start_http(int32_t s, char *ip, int32_t port, unsigned char options, cha + char *ptr, *fooptr; + int32_t complete_line = 0, buffer_size; + char tmpreplybuf[1024] = "", *tmpreplybufptr; ++ int32_t webport; + + if (strlen(login = hydra_get_next_login()) == 0) + login = empty; +@@ -291,6 +292,7 @@ void service_http(char *ip, int32_t sp, unsigned char options, char *miscptr, FI + int32_t myport = PORT_HTTP, mysslport = PORT_HTTP_SSL; + char *ptr, *ptr2; + ptr_header_node ptr_head = NULL; ++ int32_t webport; + + hydra_register_socket(sp); + if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) diff --git a/net-analyzer/hydra/files/hydra-9.0-fcommon-mod.patch b/net-analyzer/hydra/files/hydra-9.0-fcommon-mod.patch new file mode 100644 index 00000000000..e16a4157b24 --- /dev/null +++ b/net-analyzer/hydra/files/hydra-9.0-fcommon-mod.patch @@ -0,0 +1,63 @@ +--- a/hydra-mod.c ++++ b/hydra-mod.c +@@ -48,6 +48,19 @@ char ipstring[64]; + uint32_t colored_output = 1; + char quiet = 0; + int32_t old_ssl = 0; ++int32_t debug; ++char *proxy_authentication[MAX_PROXY_COUNT]; ++int32_t proxy_count; ++char proxy_string_ip[MAX_PROXY_COUNT][36]; ++char proxy_string_type[MAX_PROXY_COUNT][10]; ++int32_t proxy_string_port[MAX_PROXY_COUNT]; ++int32_t selected_proxy; ++int32_t verbose; ++int32_t waittime; ++int32_t use_proxy; ++int32_t port; ++char *cmdlinetarget; ++int32_t found; + + #ifdef LIBOPENSSL + SSL *ssl = NULL; +--- a/hydra-mod.h ++++ b/hydra-mod.h +@@ -49,23 +49,23 @@ extern int32_t hydra_memsearch(char *haystack, int32_t hlen, char *needle, int32 + extern char *hydra_strrep(char *string, char *oldpiece, char *newpiece); + + #ifdef HAVE_PCRE +-int32_t hydra_string_match(char *str, const char *regex); ++extern int32_t hydra_string_match(char *str, const char *regex); + #endif +-char *hydra_string_replace(const char *string, const char *substr, const char *replacement); ++extern char *hydra_string_replace(const char *string, const char *substr, const char *replacement); + +-int32_t debug; +-int32_t verbose; +-int32_t waittime; +-int32_t port; +-int32_t found; +-int32_t proxy_count; +-int32_t use_proxy; +-int32_t selected_proxy; +-char proxy_string_ip[MAX_PROXY_COUNT][36]; +-int32_t proxy_string_port[MAX_PROXY_COUNT]; +-char proxy_string_type[MAX_PROXY_COUNT][10]; +-char *proxy_authentication[MAX_PROXY_COUNT]; +-char *cmdlinetarget; ++extern int32_t debug; ++extern int32_t verbose; ++extern int32_t waittime; ++extern int32_t port; ++extern int32_t found; ++extern int32_t proxy_count; ++extern int32_t use_proxy; ++extern int32_t selected_proxy; ++extern char proxy_string_ip[MAX_PROXY_COUNT][36]; ++extern int32_t proxy_string_port[MAX_PROXY_COUNT]; ++extern char proxy_string_type[MAX_PROXY_COUNT][10]; ++extern char *proxy_authentication[MAX_PROXY_COUNT]; ++extern char *cmdlinetarget; + + typedef int32_t BOOL; + diff --git a/net-analyzer/hydra/files/hydra-9.0-fcommon-mods.patch b/net-analyzer/hydra/files/hydra-9.0-fcommon-mods.patch new file mode 100644 index 00000000000..9d63aa93a41 --- /dev/null +++ b/net-analyzer/hydra/files/hydra-9.0-fcommon-mods.patch @@ -0,0 +1,496 @@ +--- a/hydra-asterisk.c ++++ b/hydra-asterisk.c +@@ -9,11 +9,11 @@ + + extern char *HYDRA_EXIT; + +-char *buf; +- + int32_t start_asterisk(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { + char *empty = "\"\""; + char *login, *pass, buffer[1024]; ++ char *buf; ++ + + if (strlen(login = hydra_get_next_login()) == 0) + login = empty; +@@ -65,6 +65,7 @@ int32_t start_asterisk(int32_t s, char *ip, int32_t port, unsigned char options, + void service_asterisk(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE * fp, int32_t port, char *hostname) { + int32_t run = 1, next_run = 1, sock = -1; + int32_t myport = PORT_ASTERISK, mysslport = PORT_ASTERISK_SSL; ++ char *buf; + + hydra_register_socket(sp); + if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) +--- a/hydra-cisco-enable.c ++++ b/hydra-cisco-enable.c +@@ -1,11 +1,11 @@ + #include "hydra-mod.h" + + extern char *HYDRA_EXIT; +-char *buf; + + int32_t start_cisco_enable(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { + char *empty = ""; + char *pass, buffer[300]; ++ char *buf; + + if (strlen(pass = hydra_get_next_password()) == 0) + pass = empty; +@@ -63,6 +63,7 @@ void service_cisco_enable(char *ip, int32_t sp, unsigned char options, char *mis + int32_t myport = PORT_TELNET, mysslport = PORT_TELNET_SSL; + char buffer[300]; + char *login; ++ char *buf; + + hydra_register_socket(sp); + if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) +--- a/hydra-cisco.c ++++ b/hydra-cisco.c +@@ -5,11 +5,11 @@ + #endif + + extern char *HYDRA_EXIT; +-char *buf = NULL; + + int32_t start_cisco(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { + char *empty = ""; + char *pass, buffer[300]; ++ char *buf = NULL; + + if (strlen(pass = hydra_get_next_password()) == 0) + pass = empty; +--- a/hydra-cvs.c ++++ b/hydra-cvs.c +@@ -3,7 +3,6 @@ + extern int32_t hydra_data_ready_timed(int32_t socket, long sec, long usec); + + extern char *HYDRA_EXIT; +-char *buf; + + int32_t start_cvs(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { + char *empty = ""; +@@ -37,6 +36,7 @@ int32_t start_cvs(int32_t s, char *ip, int32_t port, unsigned char options, char + 0, 121, 117, 104, 101, 100, 69, 73, 99, 63, 94, 93, 39, 37, 61, 48, + 58, 113, 32, 90, 44, 98, 60, 51, 33, 97, 62 + }; ++ char *buf; + + if (strlen(login = hydra_get_next_login()) == 0) + login = empty; +--- a/hydra-ftp.c ++++ b/hydra-ftp.c +@@ -1,11 +1,11 @@ + #include "hydra-mod.h" + + extern char *HYDRA_EXIT; +-char *buf; + + int32_t start_ftp(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { + char *empty = "\"\""; + char *login, *pass, buffer[510]; ++ char *buf; + + if (strlen(login = hydra_get_next_login()) == 0) + login = empty; +@@ -77,6 +77,7 @@ int32_t start_ftp(int32_t s, char *ip, int32_t port, unsigned char options, char + void service_ftp_core(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE * fp, int32_t port, char *hostname, int32_t tls) { + int32_t run = 1, next_run = 1, sock = -1; + int32_t myport = PORT_FTP, mysslport = PORT_FTP_SSL; ++ char *buf; + + hydra_register_socket(sp); + if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) +--- a/hydra-http-form.c ++++ b/hydra-http-form.c +@@ -53,7 +53,6 @@ Added fail or success condition, getting cookies, and allow 5 redirections by da + #include "sasl.h" + + extern char *HYDRA_EXIT; +-char *buf; + char *cond; + extern int32_t http_auth_mechanism; + +@@ -579,6 +578,7 @@ return -1 if no response from server + */ + int32_t analyze_server_response(int32_t s) { + int32_t runs = 0; ++ char *buf; + + redirected_flag = 0; + auth_flag = 0; +--- a/hydra-http-proxy-urlenum.c ++++ b/hydra-http-proxy-urlenum.c +@@ -2,7 +2,6 @@ + #include "sasl.h" + + extern char *HYDRA_EXIT; +-char *buf; + static int32_t http_proxy_auth_mechanism = AUTH_ERROR; + + int32_t start_http_proxy_urlenum(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp, char *hostname) { +@@ -12,6 +11,7 @@ int32_t start_http_proxy_urlenum(int32_t s, char *ip, int32_t port, unsigned cha + char *header = ""; /* XXX TODO */ + char *ptr; + int32_t auth = 0; ++ char *buf; + + login = hydra_get_next_login(); + if (login == NULL || strlen(login) == 0 || strstr(login, "://") == NULL) { +--- a/hydra-imap.c ++++ b/hydra-imap.c +@@ -2,7 +2,6 @@ + #include "sasl.h" + + extern char *HYDRA_EXIT; +-char *buf; + int32_t counter; + + int32_t imap_auth_mechanism = AUTH_CLEAR; +@@ -42,6 +41,7 @@ char *imap_read_server_capacity(int32_t sock) { + int32_t start_imap(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { + char *empty = ""; + char *login, *pass, buffer[500], buffer2[500], *fooptr; ++ char *buf = NULL; + + if (strlen(login = hydra_get_next_login()) == 0) + login = empty; +@@ -357,6 +357,7 @@ void service_imap(char *ip, int32_t sp, unsigned char options, char *miscptr, FI + int32_t run = 1, next_run = 1, sock = -1; + int32_t myport = PORT_IMAP, mysslport = PORT_IMAP_SSL, disable_tls = 1; + char *buffer1 = "1 CAPABILITY\r\n"; ++ char *buf = NULL; + + hydra_register_socket(sp); + if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) +--- a/hydra-ldap.c ++++ b/hydra-ldap.c +@@ -3,8 +3,6 @@ + + extern char *HYDRA_EXIT; + +-unsigned char *buf; +-int32_t counter; + int32_t tls_required = 0; + + int32_t start_ldap(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp, char *hostname, char version, int32_t auth_method) { +@@ -13,6 +11,8 @@ int32_t start_ldap(int32_t s, char *ip, int32_t port, unsigned char options, cha + unsigned char buffer[512]; + int32_t length = 0; + int32_t ldap_auth_mechanism = auth_method; ++ unsigned char *buf; ++ int32_t counter; + + /* + The LDAP "simple" method has three modes of operation: +@@ -354,6 +354,8 @@ int32_t start_ldap(int32_t s, char *ip, int32_t port, unsigned char options, cha + void service_ldap(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE * fp, int32_t port, char *hostname, char version, int32_t auth_method) { + int32_t run = 1, next_run = 1, sock = -1; + int32_t myport = PORT_LDAP, mysslport = PORT_LDAP_SSL; ++ unsigned char *buf; ++ int32_t counter; + + hydra_register_socket(sp); + if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) +--- a/hydra-mongodb.c ++++ b/hydra-mongodb.c +@@ -17,7 +17,6 @@ void dummy_mongodb() { + extern int32_t hydra_data_ready_timed(int32_t socket, long sec, long usec); + + extern char *HYDRA_EXIT; +-char *buf; + + #define DEFAULT_DB "admin" + +@@ -31,6 +30,7 @@ int is_error_msg(char *msg) { + } + + int require_auth(int32_t sock) { ++ char *buf; + unsigned char m_hdr[] = + "\x3f\x00\x00\x00" //messageLength (63) + "\x00\x00\x00\x41" //requestID +--- a/hydra-mssql.c ++++ b/hydra-mssql.c +@@ -3,7 +3,6 @@ + #define MSLEN 30 + + extern char *HYDRA_EXIT; +-char *buf; + + unsigned char p_hdr[] = + "\x02\x00\x02\x00\x00\x00\x02\x00\x00\x00" "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" "\x00\x00\x00\x00\x00\x00\x00\x00\x00"; +@@ -52,6 +51,7 @@ int32_t start_mssql(int32_t s, char *ip, int32_t port, unsigned char options, ch + char ms_pass[MSLEN + 1]; + unsigned char len_login, len_pass; + int32_t ret = -1; ++ char *buf; + + if (strlen(login = hydra_get_next_login()) == 0) + login = empty; +--- a/hydra-nntp.c ++++ b/hydra-nntp.c +@@ -13,7 +13,6 @@ RFC 4643: Network News Transfer Protocol (NNTP) Extension for Authentication + int32_t nntp_auth_mechanism = AUTH_CLEAR; + + extern char *HYDRA_EXIT; +-char *buf; + + char *nntp_read_server_capacity(int32_t sock) { + char *ptr = NULL; +@@ -51,6 +50,7 @@ int32_t start_nntp(int32_t s, char *ip, int32_t port, unsigned char options, cha + char *empty = "\"\""; + char *login, *pass, buffer[500], buffer2[500], *fooptr; + int32_t i = 1; ++ char *buf; + + if (strlen(login = hydra_get_next_login()) == 0) + login = empty; +@@ -270,6 +270,7 @@ void service_nntp(char *ip, int32_t sp, unsigned char options, char *miscptr, FI + int32_t i = 0, run = 1, next_run = 1, sock = -1; + int32_t myport = PORT_NNTP, mysslport = PORT_NNTP_SSL, disable_tls = 0; + char *buffer1 = "CAPABILITIES\r\n"; ++ char *buf; + + hydra_register_socket(sp); + if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) +--- a/hydra-oracle-listener.c ++++ b/hydra-oracle-listener.c +@@ -22,8 +22,6 @@ void dummy_oracle_listener() { + #define HASHSIZE 17 + + extern char *HYDRA_EXIT; +-char *buf; +-unsigned char *hash; + int32_t sid_mechanism = AUTH_PLAIN; + + int32_t initial_permutation(unsigned char **result, char *p_str, int32_t *sz) { +@@ -143,6 +141,7 @@ int32_t ora_hash_password(char *pass) { + unsigned char *desresult; + unsigned char *result; + char buff[strlen(pass) + 5]; ++ unsigned char *hash; + + memset(buff, 0, sizeof(buff)); + +@@ -192,6 +191,8 @@ int32_t start_oracle_listener(int32_t s, char *ip, int32_t port, unsigned char o + char connect_string[200]; + char buffer2[260]; + int32_t siz = 0; ++ char *buf; ++ unsigned char *hash; + + memset(connect_string, 0, sizeof(connect_string)); + memset(buffer2, 0, sizeof(buffer2)); +--- a/hydra-oracle-sid.c ++++ b/hydra-oracle-sid.c +@@ -19,7 +19,6 @@ void dummy_oracle_sid() { + #define HASHSIZE 16 + + extern char *HYDRA_EXIT; +-char *buf; + unsigned char *hash; + + +@@ -40,6 +39,7 @@ int32_t start_oracle_sid(int32_t s, char *ip, int32_t port, unsigned char option + char connect_string[200]; + char buffer2[260]; + int32_t siz = 0; ++ char *buf; + + memset(connect_string, 0, sizeof(connect_string)); + memset(buffer2, 0, sizeof(buffer2)); +--- a/hydra-pcnfs.c ++++ b/hydra-pcnfs.c +@@ -3,7 +3,6 @@ + /* pcnfs stuff copied from prout.c */ + + extern char *HYDRA_EXIT; +-char *buf; + + #define LEN_HDR_RPC 24 + #define LEN_AUTH_UNIX 72+12 +@@ -37,6 +36,7 @@ int32_t start_pcnfs(int32_t s, char *ip, int32_t port, unsigned char options, ch + char *empty = ""; + char *login, *pass, buffer[LEN_HDR_RPC + LEN_AUTH_UNIX + LEN_HDR_PCN_AUTH]; + char *ptr, *pkt = buffer; ++ char *buf; + + unsigned long *authp; + struct timeval tv; +--- a/hydra-pop3.c ++++ b/hydra-pop3.c +@@ -13,7 +13,6 @@ typedef struct pool_str { + } pool; + + extern char *HYDRA_EXIT; +-char *buf; + char apop_challenge[300] = ""; + pool *plist = NULL, *p = NULL; + +@@ -120,6 +119,7 @@ STLS + int32_t start_pop3(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { + char *empty = "\"\""; + char *login, *pass, buffer[500], buffer2[500], *fooptr; ++ char *buf; + + if (strlen(login = hydra_get_next_login()) == 0) + login = empty; +@@ -416,6 +416,7 @@ int32_t start_pop3(int32_t s, char *ip, int32_t port, unsigned char options, cha + void service_pop3(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE * fp, int32_t port, char *hostname) { + int32_t run = 1, next_run = 1, sock = -1; + char *ptr = NULL; ++ char *buf; + + //extract data from the pool, ip is the key + if (plist == NULL) +@@ -520,6 +521,7 @@ int32_t service_pop3_init(char *ip, int32_t sp, unsigned char options, char *mis + char *capa_str = "CAPA\r\n"; + char *quit_str = "QUIT\r\n"; + pool p; ++ char *buf; + + p.pop3_auth_mechanism = AUTH_CLEAR; + p.disable_tls = 1; +--- a/hydra-redis.c ++++ b/hydra-redis.c +@@ -1,11 +1,11 @@ + #include "hydra-mod.h" + + extern char *HYDRA_EXIT; +-char *buf; + + int32_t start_redis(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { + char *pass, buffer[510]; + char *empty = ""; ++ char *buf; + + if (strlen(pass = hydra_get_next_password()) == 0) + pass = empty; +@@ -134,6 +134,7 @@ int32_t service_redis_init(char *ip, int32_t sp, unsigned char options, char *mi + int32_t sock = -1; + int32_t myport = PORT_REDIS, mysslport = PORT_REDIS_SSL; + char buffer[] = "*1\r\n$4\r\nping\r\n"; ++ char *buf; + + hydra_register_socket(sp); + if ((options & OPTION_SSL) == 0) { +--- a/hydra-smtp-enum.c ++++ b/hydra-smtp-enum.c +@@ -14,7 +14,6 @@ passwd will be used as the domain name + #include "hydra-mod.h" + + extern char *HYDRA_EXIT; +-char *buf; + char *err = NULL; + int32_t tosent = 0; + +@@ -27,6 +26,7 @@ int32_t smtp_enum_cmd = VRFY; + int32_t start_smtp_enum(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { + char *empty = ""; + char *login, *pass, buffer[500]; ++ char *buf; + + if (strlen(login = hydra_get_next_login()) == 0) + login = empty; +@@ -154,6 +154,7 @@ void service_smtp_enum(char *ip, int32_t sp, unsigned char options, char *miscpt + int32_t run = 1, next_run = 1, sock = -1, i = 0; + int32_t myport = PORT_SMTP, mysslport = PORT_SMTP_SSL; + char *buffer = "HELO hydra\r\n"; ++ char *buf; + + hydra_register_socket(sp); + if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) +--- a/hydra-socks5.c ++++ b/hydra-socks5.c +@@ -10,7 +10,6 @@ This module enable bruteforcing for socks5, only following types are supported: + */ + + extern char *HYDRA_EXIT; +-unsigned char *buf; + + int32_t fail_cnt; + +@@ -18,6 +17,7 @@ int32_t start_socks5(int32_t s, char *ip, int32_t port, unsigned char options, c + char *empty = ""; + char *login, *pass, buffer[300]; + int32_t pport, fud = 0; ++ unsigned char *buf; + + if (strlen(login = hydra_get_next_login()) == 0) + login = empty; +--- a/hydra-telnet.c ++++ b/hydra-telnet.c +@@ -2,13 +2,13 @@ + #include <arpa/telnet.h> + + extern char *HYDRA_EXIT; +-char *buf; + int32_t no_line_mode; + + int32_t start_telnet(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { + char *empty = ""; + char *login, *pass, buffer[300]; + int32_t i = 0; ++ char *buf; + + if (strlen(login = hydra_get_next_login()) == 0) + login = empty; +@@ -99,6 +99,7 @@ int32_t start_telnet(int32_t s, char *ip, int32_t port, unsigned char options, c + void service_telnet(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE * fp, int32_t port, char *hostname) { + int32_t run = 1, next_run = 1, sock = -1, fck; + int32_t myport = PORT_TELNET, mysslport = PORT_TELNET_SSL; ++ char *buf; + + hydra_register_socket(sp); + if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) +--- a/hydra-vmauthd.c ++++ b/hydra-vmauthd.c +@@ -8,11 +8,11 @@ + + extern char *HYDRA_EXIT; + +-char *buf; +- + int32_t start_vmauthd(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { + char *empty = "\"\""; + char *login, *pass, buffer[300]; ++ char *buf; ++ + + if (strlen(login = hydra_get_next_login()) == 0) + login = empty; +@@ -68,6 +68,7 @@ int32_t start_vmauthd(int32_t s, char *ip, int32_t port, unsigned char options, + void service_vmauthd(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE * fp, int32_t port, char *hostname) { + int32_t run = 1, next_run = 1, sock = -1; + int32_t myport = PORT_VMAUTHD, mysslport = PORT_VMAUTHD_SSL; ++ char *buf; + + hydra_register_socket(sp); + if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) +--- a/hydra-vnc.c ++++ b/hydra-vnc.c +@@ -19,7 +19,6 @@ int32_t vnc_client_version = RFB33; + int32_t failed_auth = 0; + + extern char *HYDRA_EXIT; +-char *buf; + + /* + * Encrypt CHALLENGESIZE bytes in memory using a password. +@@ -48,6 +47,7 @@ int32_t start_vnc(int32_t s, char *ip, int32_t port, unsigned char options, char + char *empty = ""; + char *pass; + unsigned char buf2[CHALLENGESIZE + 4]; ++ char *buf; + + if (strlen(pass = hydra_get_next_password()) == 0) + pass = empty; +@@ -148,6 +148,7 @@ int32_t start_vnc(int32_t s, char *ip, int32_t port, unsigned char options, char + void service_vnc(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE * fp, int32_t port, char *hostname) { + int32_t run = 1, next_run = 1, sock = -1; + int32_t myport = PORT_VNC, mysslport = PORT_VNC_SSL; ++ char *buf; + + hydra_register_socket(sp); + if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) diff --git a/net-analyzer/hydra/files/hydra-9.0-unneeded-buf.patch b/net-analyzer/hydra/files/hydra-9.0-unneeded-buf.patch new file mode 100644 index 00000000000..0055257b04a --- /dev/null +++ b/net-analyzer/hydra/files/hydra-9.0-unneeded-buf.patch @@ -0,0 +1,60 @@ +--- a/hydra-irc.c ++++ b/hydra-irc.c +@@ -7,7 +7,6 @@ RFC 1459: Internet Relay Chat Protocol + */ + + extern char *HYDRA_EXIT; +-char *buf; + char buffer[300] = ""; + int32_t myport = PORT_IRC, mysslport = PORT_IRC_SSL; + +--- a/hydra-rexec.c ++++ b/hydra-rexec.c +@@ -5,7 +5,6 @@ + #define COMMAND "/bin/ls /" + + extern char *HYDRA_EXIT; +-char *buf; + + int32_t start_rexec(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { + char *empty = ""; +--- a/hydra-rlogin.c ++++ b/hydra-rlogin.c +@@ -12,7 +12,6 @@ no memleaks found on 110425 + #define TERM "vt100/9600" + + extern char *HYDRA_EXIT; +-char *buf; + + int32_t start_rlogin(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { + char *empty = ""; +--- a/hydra-rsh.c ++++ b/hydra-rsh.c +@@ -11,7 +11,6 @@ no memleaks found on 110425 + */ + + extern char *HYDRA_EXIT; +-char *buf; + + int32_t start_rsh(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { + char *empty = ""; +--- a/hydra-rtsp.c ++++ b/hydra-rtsp.c +@@ -12,7 +12,6 @@ + #include "sasl.h" + + extern char *HYDRA_EXIT; +-char *buf; + char packet[500]; + char packet2[500]; + +--- a/hydra-teamspeak.c ++++ b/hydra-teamspeak.c +@@ -36,7 +36,6 @@ struct team_speak { + extern int32_t hydra_data_ready_timed(int32_t socket, long sec, long usec); + + extern char *HYDRA_EXIT; +-char *buf; + + int32_t start_teamspeak(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { + char *empty = ""; diff --git a/net-analyzer/hydra/files/hydra-9.0-vnc.patch b/net-analyzer/hydra/files/hydra-9.0-vnc.patch new file mode 100644 index 00000000000..69c933ee838 --- /dev/null +++ b/net-analyzer/hydra/files/hydra-9.0-vnc.patch @@ -0,0 +1,11 @@ +--- a/hydra-vnc.c ++++ b/hydra-vnc.c +@@ -75,7 +75,7 @@ int32_t start_vnc(int32_t s, char *ip, int32_t port, unsigned char options, char + //supported security type + switch (buf2[3]) { + case 0x0: +- hydra_report(stderr, "[ERROR] VNC server told us to quit %c\n", buf[3]); ++ hydra_report(stderr, "[ERROR] VNC server told us to quit %c\n", buf2[3]); + hydra_child_exit(0); + break; + case 0x1: diff --git a/net-analyzer/hydra/files/hydra-9999999-fcommon-http.patch b/net-analyzer/hydra/files/hydra-9999999-fcommon-http.patch new file mode 100644 index 00000000000..eea0c3bc3ae --- /dev/null +++ b/net-analyzer/hydra/files/hydra-9999999-fcommon-http.patch @@ -0,0 +1,27 @@ +--- a/hydra-http.c ++++ b/hydra-http.c +@@ -12,7 +12,7 @@ char *http_buf = NULL; + static char end_condition[END_CONDITION_MAX_LEN]; + int end_condition_type=-1; + +-int32_t webport, freemischttp = 0; ++int32_t freemischttp = 0; + int32_t http_auth_mechanism = AUTH_UNASSIGNED; + + int32_t start_http(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp, char *type, ptr_header_node ptr_head) { +@@ -22,6 +22,7 @@ int32_t start_http(int32_t s, char *ip, int32_t port, unsigned char options, cha + char *ptr, *fooptr; + int32_t complete_line = 0, buffer_size; + char tmpreplybuf[1024] = "", *tmpreplybufptr; ++ int32_t webport; + + if (strlen(login = hydra_get_next_login()) == 0) + login = empty; +@@ -291,6 +292,7 @@ void service_http(char *ip, int32_t sp, unsigned char options, char *miscptr, FI + int32_t myport = PORT_HTTP, mysslport = PORT_HTTP_SSL; + char *ptr, *ptr2; + ptr_header_node ptr_head = NULL; ++ int32_t webport; + + hydra_register_socket(sp); + if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) diff --git a/net-analyzer/hydra/hydra-9999999.ebuild b/net-analyzer/hydra/hydra-9.0-r1.ebuild similarity index 66% copy from net-analyzer/hydra/hydra-9999999.ebuild copy to net-analyzer/hydra/hydra-9.0-r1.ebuild index 9ef6f73c7ec..c7b1e8aa733 100644 --- a/net-analyzer/hydra/hydra-9999999.ebuild +++ b/net-analyzer/hydra/hydra-9.0-r1.ebuild @@ -1,16 +1,16 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -inherit git-r3 toolchain-funcs +inherit toolchain-funcs DESCRIPTION="Parallelized network login hacker" HOMEPAGE="https://github.com/vanhauser-thc/thc-hydra" -EGIT_REPO_URI="https://github.com/vanhauser-thc/thc-hydra" +SRC_URI="https://github.com/vanhauser-thc/thc-hydra/archive/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="GPL-3" SLOT="0" -KEYWORDS="" +KEYWORDS="~amd64 ~ppc ~x86" IUSE=" debug firebird gcrypt gtk idn libressl memcached mongodb mysql ncp ncurses oracle pcre postgres rdp libssh subversion zlib @@ -45,6 +45,15 @@ DEPEND=" ${RDEPEND} virtual/pkgconfig " +PATCHES=( + "${FILESDIR}"/${PN}-9.0-fcommon-gtk.patch + "${FILESDIR}"/${PN}-9.0-fcommon-http.patch + "${FILESDIR}"/${PN}-9.0-fcommon-mod.patch + "${FILESDIR}"/${PN}-9.0-fcommon-mods.patch + "${FILESDIR}"/${PN}-9.0-unneeded-buf.patch + "${FILESDIR}"/${PN}-9.0-vnc.patch +) +S=${WORKDIR}/thc-${P} src_prepare() { default @@ -81,21 +90,21 @@ src_configure() { hydra_sed firebird '-lfbclient' '' '-DLIBFIREBIRD' hydra_sed gcrypt '-lgcrypt' '$( ${CTARGET:-${CHOST}}-libgcrypt-config --libs )' '-DHAVE_GCRYPT' - hydra_sed idn '-lidn' '$( "${PKG_CONFIG}" --libs libidn )' '-DLIBIDN -DHAVE_PR29_H' - hydra_sed libssh '-lssh' '$( "${PKG_CONFIG}" --libs libssh )' '-DLIBSSH' - hydra_sed memcached '-lmemcached' '$( "${PKG_CONFIG}" --libs libmemcached )' '-DLIBMCACHED' - hydra_sed mongodb '-lmongoc-1.0' '$( "${PKG_CONFIG}" --libs libmongoc-1.0 )' '-DLIBMONGODB\|-DLIBBSON' + hydra_sed idn '-lidn' '$( "${PKG_CONFIG}" --libs libidn )' '-DLIBIDN -DHAVE_PR29_H' + hydra_sed libssh '-lssh' '$( "${PKG_CONFIG}" --libs libssh )' '-DLIBSSH' + hydra_sed memcached '-lmemcached' '$( "${PKG_CONFIG}" --libs libmemcached )' '-DLIBMCACHED' + hydra_sed mongodb '-lmongoc-1.0' '$( "${PKG_CONFIG}" --libs libmongoc-1.0 )' '-DLIBMONGODB\|-DLIBBSON' hydra_sed mysql '-lmysqlclient' '$( ${CTARGET:-${CHOST}}-mysql_config --libs )' '-DLIBMYSQLCLIENT' hydra_sed ncp '-lncp' '' '-DLIBNCP' - hydra_sed ncurses '-lcurses' '$( "${PKG_CONFIG}" --libs ncurses )' '-DLIBNCURSES' - hydra_sed pcre '-lpcre' '$( "${PKG_CONFIG}" --libs libpcre )' '-DHAVE_PCRE' - hydra_sed postgres '-lpq' '$( "${PKG_CONFIG}" --libs libpq )' '-DLIBPOSTGRES' + hydra_sed ncurses '-lcurses' '$( "${PKG_CONFIG}" --libs ncurses )' '-DLIBNCURSES' + hydra_sed pcre '-lpcre' '$( "${PKG_CONFIG}" --libs libpcre )' '-DHAVE_PCRE' + hydra_sed postgres '-lpq' '$( "${PKG_CONFIG}" --libs libpq )' '-DLIBPOSTGRES' hydra_sed oracle '-locci -lclntsh' '' '-DLIBORACLE' - hydra_sed rdp '-lfreerdp2' '$( "${PKG_CONFIG}" --libs freerdp2 )' '-DLIBFREERDP2' + hydra_sed rdp '-lfreerdp2' '$( "${PKG_CONFIG}" --libs freerdp2 )' '-DLIBFREERDP2' # TODO: https://bugs.gentoo.org/686148 - #hydra_sed subversion '-lsvn_client-1 -lapr-1 -laprutil-1 -lsvn_subr-1' '$( "${PKG_CONFIG}" --libs libsvn_client )' '-DLIBSVN' + #hydra_sed subversion '-lsvn_client-1 -lapr-1 -laprutil-1 -lsvn_subr-1' '$( "${PKG_CONFIG}" --libs libsvn_client )' '-DLIBSVN' hydra_sed subversion '-lsvn_client-1 -lapr-1 -laprutil-1 -lsvn_subr-1' '' '-DLIBSVN' - hydra_sed zlib '-lz' '$( "${PKG_CONFIG}" --libs zlib )' '-DHAVE_ZLIB' + hydra_sed zlib '-lz' '$( "${PKG_CONFIG}" --libs zlib )' '-DHAVE_ZLIB' sh configure \ $(use gtk || echo --disable-xhydra) \ @@ -118,5 +127,5 @@ src_compile() { src_install() { dobin hydra pw-inspector use gtk && dobin hydra-gtk/src/xhydra - dodoc CHANGES README.md + dodoc CHANGES README } diff --git a/net-analyzer/hydra/hydra-9999999.ebuild b/net-analyzer/hydra/hydra-9999999.ebuild index 9ef6f73c7ec..6f65020dd57 100644 --- a/net-analyzer/hydra/hydra-9999999.ebuild +++ b/net-analyzer/hydra/hydra-9999999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -45,6 +45,14 @@ DEPEND=" ${RDEPEND} virtual/pkgconfig " +PATCHES=( + "${FILESDIR}"/${PN}-9.0-fcommon-gtk.patch + "${FILESDIR}"/${PN}-9.0-fcommon-mod.patch + "${FILESDIR}"/${PN}-9.0-fcommon-mods.patch + "${FILESDIR}"/${PN}-9.0-unneeded-buf.patch + "${FILESDIR}"/${PN}-9.0-vnc.patch + "${FILESDIR}"/${PN}-9999999-fcommon-http.patch +) src_prepare() { default @@ -81,21 +89,21 @@ src_configure() { hydra_sed firebird '-lfbclient' '' '-DLIBFIREBIRD' hydra_sed gcrypt '-lgcrypt' '$( ${CTARGET:-${CHOST}}-libgcrypt-config --libs )' '-DHAVE_GCRYPT' - hydra_sed idn '-lidn' '$( "${PKG_CONFIG}" --libs libidn )' '-DLIBIDN -DHAVE_PR29_H' - hydra_sed libssh '-lssh' '$( "${PKG_CONFIG}" --libs libssh )' '-DLIBSSH' - hydra_sed memcached '-lmemcached' '$( "${PKG_CONFIG}" --libs libmemcached )' '-DLIBMCACHED' - hydra_sed mongodb '-lmongoc-1.0' '$( "${PKG_CONFIG}" --libs libmongoc-1.0 )' '-DLIBMONGODB\|-DLIBBSON' + hydra_sed idn '-lidn' '$( "${PKG_CONFIG}" --libs libidn )' '-DLIBIDN -DHAVE_PR29_H' + hydra_sed libssh '-lssh' '$( "${PKG_CONFIG}" --libs libssh )' '-DLIBSSH' + hydra_sed memcached '-lmemcached' '$( "${PKG_CONFIG}" --libs libmemcached )' '-DLIBMCACHED' + hydra_sed mongodb '-lmongoc-1.0' '$( "${PKG_CONFIG}" --libs libmongoc-1.0 )' '-DLIBMONGODB\|-DLIBBSON' hydra_sed mysql '-lmysqlclient' '$( ${CTARGET:-${CHOST}}-mysql_config --libs )' '-DLIBMYSQLCLIENT' hydra_sed ncp '-lncp' '' '-DLIBNCP' - hydra_sed ncurses '-lcurses' '$( "${PKG_CONFIG}" --libs ncurses )' '-DLIBNCURSES' - hydra_sed pcre '-lpcre' '$( "${PKG_CONFIG}" --libs libpcre )' '-DHAVE_PCRE' - hydra_sed postgres '-lpq' '$( "${PKG_CONFIG}" --libs libpq )' '-DLIBPOSTGRES' + hydra_sed ncurses '-lcurses' '$( "${PKG_CONFIG}" --libs ncurses )' '-DLIBNCURSES' + hydra_sed pcre '-lpcre' '$( "${PKG_CONFIG}" --libs libpcre )' '-DHAVE_PCRE' + hydra_sed postgres '-lpq' '$( "${PKG_CONFIG}" --libs libpq )' '-DLIBPOSTGRES' hydra_sed oracle '-locci -lclntsh' '' '-DLIBORACLE' - hydra_sed rdp '-lfreerdp2' '$( "${PKG_CONFIG}" --libs freerdp2 )' '-DLIBFREERDP2' + hydra_sed rdp '-lfreerdp2' '$( "${PKG_CONFIG}" --libs freerdp2 )' '-DLIBFREERDP2' # TODO: https://bugs.gentoo.org/686148 - #hydra_sed subversion '-lsvn_client-1 -lapr-1 -laprutil-1 -lsvn_subr-1' '$( "${PKG_CONFIG}" --libs libsvn_client )' '-DLIBSVN' + #hydra_sed subversion '-lsvn_client-1 -lapr-1 -laprutil-1 -lsvn_subr-1' '$( "${PKG_CONFIG}" --libs libsvn_client )' '-DLIBSVN' hydra_sed subversion '-lsvn_client-1 -lapr-1 -laprutil-1 -lsvn_subr-1' '' '-DLIBSVN' - hydra_sed zlib '-lz' '$( "${PKG_CONFIG}" --libs zlib )' '-DHAVE_ZLIB' + hydra_sed zlib '-lz' '$( "${PKG_CONFIG}" --libs zlib )' '-DHAVE_ZLIB' sh configure \ $(use gtk || echo --disable-xhydra) \