1 |
commit: 95c1ff070c3d3a67d6e14734cf7f4f28b641b382 |
2 |
Author: Jeroen Roovers <jer <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun Jan 26 16:42:16 2020 +0000 |
4 |
Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Jan 26 16:43:48 2020 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=95c1ff07 |
7 |
|
8 |
net-analyzer/hydra: Fix -fno-common issues |
9 |
|
10 |
Package-Manager: Portage-2.3.85, Repoman-2.3.20 |
11 |
Bug: https://bugs.gentoo.org/706416 |
12 |
Signed-off-by: Jeroen Roovers <jer <AT> gentoo.org> |
13 |
|
14 |
.../hydra/files/hydra-9.0-fcommon-gtk.patch | 79 ++++ |
15 |
.../hydra/files/hydra-9.0-fcommon-http.patch | 27 ++ |
16 |
.../hydra/files/hydra-9.0-fcommon-mod.patch | 63 +++ |
17 |
.../hydra/files/hydra-9.0-fcommon-mods.patch | 496 +++++++++++++++++++++ |
18 |
.../hydra/files/hydra-9.0-unneeded-buf.patch | 60 +++ |
19 |
net-analyzer/hydra/files/hydra-9.0-vnc.patch | 11 + |
20 |
.../hydra/files/hydra-9999999-fcommon-http.patch | 27 ++ |
21 |
.../{hydra-9999999.ebuild => hydra-9.0-r1.ebuild} | 39 +- |
22 |
net-analyzer/hydra/hydra-9999999.ebuild | 30 +- |
23 |
9 files changed, 806 insertions(+), 26 deletions(-) |
24 |
|
25 |
diff --git a/net-analyzer/hydra/files/hydra-9.0-fcommon-gtk.patch b/net-analyzer/hydra/files/hydra-9.0-fcommon-gtk.patch |
26 |
new file mode 100644 |
27 |
index 00000000000..02ebab64e41 |
28 |
--- /dev/null |
29 |
+++ b/net-analyzer/hydra/files/hydra-9.0-fcommon-gtk.patch |
30 |
@@ -0,0 +1,79 @@ |
31 |
+--- a/hydra-gtk/src/callbacks.c |
32 |
++++ b/hydra-gtk/src/callbacks.c |
33 |
+@@ -66,7 +66,7 @@ int hydra_get_options(char *options[]) { |
34 |
+ gchar *tmp; |
35 |
+ GString *a; |
36 |
+ |
37 |
+- options[0] = HYDRA_BIN; |
38 |
++ options[0] = hydra_bin; |
39 |
+ |
40 |
+ /* get the port */ |
41 |
+ widget = lookup_widget(GTK_WIDGET(wndMain), "spnPort"); |
42 |
+@@ -599,7 +599,7 @@ int *popen_re_unbuffered(char *command) { |
43 |
+ |
44 |
+ (void) hydra_get_options(options); |
45 |
+ |
46 |
+- execv(HYDRA_BIN, options); |
47 |
++ execv(hydra_bin, options); |
48 |
+ |
49 |
+ g_warning("%s %i: popen_rw_unbuffered: execv() returned", __FILE__, __LINE__); |
50 |
+ |
51 |
+--- a/hydra-gtk/src/main.c |
52 |
++++ b/hydra-gtk/src/main.c |
53 |
+@@ -17,12 +17,12 @@ |
54 |
+ char *hydra_path1 = "./hydra"; |
55 |
+ char *hydra_path2 = "/usr/local/bin/hydra"; |
56 |
+ char *hydra_path3 = "/usr/bin/hydra"; |
57 |
+- |
58 |
++char *hydra_bin; |
59 |
++GtkWidget *wndMain; |
60 |
++guint message_id; |
61 |
+ |
62 |
+ int main(int argc, char *argv[]) { |
63 |
+- extern GtkWidget *wndMain; |
64 |
+ int i; |
65 |
+- extern guint message_id; |
66 |
+ GtkWidget *output; |
67 |
+ GtkTextBuffer *outputbuf; |
68 |
+ |
69 |
+@@ -35,22 +35,22 @@ int main(int argc, char *argv[]) { |
70 |
+ message_id = 0; |
71 |
+ |
72 |
+ /* locate the hydra binary */ |
73 |
+- HYDRA_BIN = NULL; |
74 |
++ hydra_bin = NULL; |
75 |
+ for (i = 0; i < argc - 1; i++) { |
76 |
+ if (!strcmp(argv[i], "--hydra-path")) { |
77 |
+- HYDRA_BIN = argv[i + 1]; |
78 |
++ hydra_bin = argv[i + 1]; |
79 |
+ break; |
80 |
+ } |
81 |
+ } |
82 |
+ |
83 |
+- if ((HYDRA_BIN != NULL) && (g_file_test(HYDRA_BIN, G_FILE_TEST_IS_EXECUTABLE))) { |
84 |
++ if ((hydra_bin != NULL) && (g_file_test(hydra_bin, G_FILE_TEST_IS_EXECUTABLE))) { |
85 |
+ /* just for obfuscation *g* */ |
86 |
+ } else if (g_file_test(hydra_path1, G_FILE_TEST_IS_EXECUTABLE)) { |
87 |
+- HYDRA_BIN = hydra_path1; |
88 |
++ hydra_bin = hydra_path1; |
89 |
+ } else if (g_file_test(hydra_path2, G_FILE_TEST_IS_EXECUTABLE)) { |
90 |
+- HYDRA_BIN = hydra_path2; |
91 |
++ hydra_bin = hydra_path2; |
92 |
+ } else if (g_file_test(hydra_path3, G_FILE_TEST_IS_EXECUTABLE)) { |
93 |
+- HYDRA_BIN = hydra_path3; |
94 |
++ hydra_bin = hydra_path3; |
95 |
+ } else { |
96 |
+ g_error("Please tell me where hydra is, use --hydra-path\n"); |
97 |
+ return -1; |
98 |
+--- a/hydra-gtk/src/support.h |
99 |
++++ b/hydra-gtk/src/support.h |
100 |
+@@ -40,6 +40,6 @@ GdkPixbuf *create_pixbuf(const gchar * filename); |
101 |
+ void glade_set_atk_action_description(AtkAction * action, const gchar * action_name, const gchar * description); |
102 |
+ |
103 |
+ |
104 |
+-GtkWidget *wndMain; |
105 |
+-char *HYDRA_BIN; |
106 |
+-guint message_id; |
107 |
++extern GtkWidget *wndMain; |
108 |
++extern char *hydra_bin; |
109 |
++extern guint message_id; |
110 |
|
111 |
diff --git a/net-analyzer/hydra/files/hydra-9.0-fcommon-http.patch b/net-analyzer/hydra/files/hydra-9.0-fcommon-http.patch |
112 |
new file mode 100644 |
113 |
index 00000000000..35b45e07161 |
114 |
--- /dev/null |
115 |
+++ b/net-analyzer/hydra/files/hydra-9.0-fcommon-http.patch |
116 |
@@ -0,0 +1,27 @@ |
117 |
+--- a/hydra-http.c |
118 |
++++ b/hydra-http.c |
119 |
+@@ -5,7 +5,7 @@ |
120 |
+ char *webtarget = NULL; |
121 |
+ char *slash = "/"; |
122 |
+ char *http_buf = NULL; |
123 |
+-int32_t webport, freemischttp = 0; |
124 |
++int32_t freemischttp = 0; |
125 |
+ int32_t http_auth_mechanism = AUTH_UNASSIGNED; |
126 |
+ |
127 |
+ 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) { |
128 |
+@@ -22,6 +22,7 @@ int32_t start_http(int32_t s, char *ip, int32_t port, unsigned char options, cha |
129 |
+ char *ptr, *fooptr; |
130 |
+ int32_t complete_line = 0, buffer_size; |
131 |
+ char tmpreplybuf[1024] = "", *tmpreplybufptr; |
132 |
++ int32_t webport; |
133 |
+ |
134 |
+ if (strlen(login = hydra_get_next_login()) == 0) |
135 |
+ login = empty; |
136 |
+@@ -291,6 +292,7 @@ void service_http(char *ip, int32_t sp, unsigned char options, char *miscptr, FI |
137 |
+ int32_t myport = PORT_HTTP, mysslport = PORT_HTTP_SSL; |
138 |
+ char *ptr, *ptr2; |
139 |
+ ptr_header_node ptr_head = NULL; |
140 |
++ int32_t webport; |
141 |
+ |
142 |
+ hydra_register_socket(sp); |
143 |
+ if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) |
144 |
|
145 |
diff --git a/net-analyzer/hydra/files/hydra-9.0-fcommon-mod.patch b/net-analyzer/hydra/files/hydra-9.0-fcommon-mod.patch |
146 |
new file mode 100644 |
147 |
index 00000000000..e16a4157b24 |
148 |
--- /dev/null |
149 |
+++ b/net-analyzer/hydra/files/hydra-9.0-fcommon-mod.patch |
150 |
@@ -0,0 +1,63 @@ |
151 |
+--- a/hydra-mod.c |
152 |
++++ b/hydra-mod.c |
153 |
+@@ -48,6 +48,19 @@ char ipstring[64]; |
154 |
+ uint32_t colored_output = 1; |
155 |
+ char quiet = 0; |
156 |
+ int32_t old_ssl = 0; |
157 |
++int32_t debug; |
158 |
++char *proxy_authentication[MAX_PROXY_COUNT]; |
159 |
++int32_t proxy_count; |
160 |
++char proxy_string_ip[MAX_PROXY_COUNT][36]; |
161 |
++char proxy_string_type[MAX_PROXY_COUNT][10]; |
162 |
++int32_t proxy_string_port[MAX_PROXY_COUNT]; |
163 |
++int32_t selected_proxy; |
164 |
++int32_t verbose; |
165 |
++int32_t waittime; |
166 |
++int32_t use_proxy; |
167 |
++int32_t port; |
168 |
++char *cmdlinetarget; |
169 |
++int32_t found; |
170 |
+ |
171 |
+ #ifdef LIBOPENSSL |
172 |
+ SSL *ssl = NULL; |
173 |
+--- a/hydra-mod.h |
174 |
++++ b/hydra-mod.h |
175 |
+@@ -49,23 +49,23 @@ extern int32_t hydra_memsearch(char *haystack, int32_t hlen, char *needle, int32 |
176 |
+ extern char *hydra_strrep(char *string, char *oldpiece, char *newpiece); |
177 |
+ |
178 |
+ #ifdef HAVE_PCRE |
179 |
+-int32_t hydra_string_match(char *str, const char *regex); |
180 |
++extern int32_t hydra_string_match(char *str, const char *regex); |
181 |
+ #endif |
182 |
+-char *hydra_string_replace(const char *string, const char *substr, const char *replacement); |
183 |
++extern char *hydra_string_replace(const char *string, const char *substr, const char *replacement); |
184 |
+ |
185 |
+-int32_t debug; |
186 |
+-int32_t verbose; |
187 |
+-int32_t waittime; |
188 |
+-int32_t port; |
189 |
+-int32_t found; |
190 |
+-int32_t proxy_count; |
191 |
+-int32_t use_proxy; |
192 |
+-int32_t selected_proxy; |
193 |
+-char proxy_string_ip[MAX_PROXY_COUNT][36]; |
194 |
+-int32_t proxy_string_port[MAX_PROXY_COUNT]; |
195 |
+-char proxy_string_type[MAX_PROXY_COUNT][10]; |
196 |
+-char *proxy_authentication[MAX_PROXY_COUNT]; |
197 |
+-char *cmdlinetarget; |
198 |
++extern int32_t debug; |
199 |
++extern int32_t verbose; |
200 |
++extern int32_t waittime; |
201 |
++extern int32_t port; |
202 |
++extern int32_t found; |
203 |
++extern int32_t proxy_count; |
204 |
++extern int32_t use_proxy; |
205 |
++extern int32_t selected_proxy; |
206 |
++extern char proxy_string_ip[MAX_PROXY_COUNT][36]; |
207 |
++extern int32_t proxy_string_port[MAX_PROXY_COUNT]; |
208 |
++extern char proxy_string_type[MAX_PROXY_COUNT][10]; |
209 |
++extern char *proxy_authentication[MAX_PROXY_COUNT]; |
210 |
++extern char *cmdlinetarget; |
211 |
+ |
212 |
+ typedef int32_t BOOL; |
213 |
+ |
214 |
|
215 |
diff --git a/net-analyzer/hydra/files/hydra-9.0-fcommon-mods.patch b/net-analyzer/hydra/files/hydra-9.0-fcommon-mods.patch |
216 |
new file mode 100644 |
217 |
index 00000000000..9d63aa93a41 |
218 |
--- /dev/null |
219 |
+++ b/net-analyzer/hydra/files/hydra-9.0-fcommon-mods.patch |
220 |
@@ -0,0 +1,496 @@ |
221 |
+--- a/hydra-asterisk.c |
222 |
++++ b/hydra-asterisk.c |
223 |
+@@ -9,11 +9,11 @@ |
224 |
+ |
225 |
+ extern char *HYDRA_EXIT; |
226 |
+ |
227 |
+-char *buf; |
228 |
+- |
229 |
+ int32_t start_asterisk(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { |
230 |
+ char *empty = "\"\""; |
231 |
+ char *login, *pass, buffer[1024]; |
232 |
++ char *buf; |
233 |
++ |
234 |
+ |
235 |
+ if (strlen(login = hydra_get_next_login()) == 0) |
236 |
+ login = empty; |
237 |
+@@ -65,6 +65,7 @@ int32_t start_asterisk(int32_t s, char *ip, int32_t port, unsigned char options, |
238 |
+ void service_asterisk(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE * fp, int32_t port, char *hostname) { |
239 |
+ int32_t run = 1, next_run = 1, sock = -1; |
240 |
+ int32_t myport = PORT_ASTERISK, mysslport = PORT_ASTERISK_SSL; |
241 |
++ char *buf; |
242 |
+ |
243 |
+ hydra_register_socket(sp); |
244 |
+ if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) |
245 |
+--- a/hydra-cisco-enable.c |
246 |
++++ b/hydra-cisco-enable.c |
247 |
+@@ -1,11 +1,11 @@ |
248 |
+ #include "hydra-mod.h" |
249 |
+ |
250 |
+ extern char *HYDRA_EXIT; |
251 |
+-char *buf; |
252 |
+ |
253 |
+ int32_t start_cisco_enable(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { |
254 |
+ char *empty = ""; |
255 |
+ char *pass, buffer[300]; |
256 |
++ char *buf; |
257 |
+ |
258 |
+ if (strlen(pass = hydra_get_next_password()) == 0) |
259 |
+ pass = empty; |
260 |
+@@ -63,6 +63,7 @@ void service_cisco_enable(char *ip, int32_t sp, unsigned char options, char *mis |
261 |
+ int32_t myport = PORT_TELNET, mysslport = PORT_TELNET_SSL; |
262 |
+ char buffer[300]; |
263 |
+ char *login; |
264 |
++ char *buf; |
265 |
+ |
266 |
+ hydra_register_socket(sp); |
267 |
+ if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) |
268 |
+--- a/hydra-cisco.c |
269 |
++++ b/hydra-cisco.c |
270 |
+@@ -5,11 +5,11 @@ |
271 |
+ #endif |
272 |
+ |
273 |
+ extern char *HYDRA_EXIT; |
274 |
+-char *buf = NULL; |
275 |
+ |
276 |
+ int32_t start_cisco(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { |
277 |
+ char *empty = ""; |
278 |
+ char *pass, buffer[300]; |
279 |
++ char *buf = NULL; |
280 |
+ |
281 |
+ if (strlen(pass = hydra_get_next_password()) == 0) |
282 |
+ pass = empty; |
283 |
+--- a/hydra-cvs.c |
284 |
++++ b/hydra-cvs.c |
285 |
+@@ -3,7 +3,6 @@ |
286 |
+ extern int32_t hydra_data_ready_timed(int32_t socket, long sec, long usec); |
287 |
+ |
288 |
+ extern char *HYDRA_EXIT; |
289 |
+-char *buf; |
290 |
+ |
291 |
+ int32_t start_cvs(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { |
292 |
+ char *empty = ""; |
293 |
+@@ -37,6 +36,7 @@ int32_t start_cvs(int32_t s, char *ip, int32_t port, unsigned char options, char |
294 |
+ 0, 121, 117, 104, 101, 100, 69, 73, 99, 63, 94, 93, 39, 37, 61, 48, |
295 |
+ 58, 113, 32, 90, 44, 98, 60, 51, 33, 97, 62 |
296 |
+ }; |
297 |
++ char *buf; |
298 |
+ |
299 |
+ if (strlen(login = hydra_get_next_login()) == 0) |
300 |
+ login = empty; |
301 |
+--- a/hydra-ftp.c |
302 |
++++ b/hydra-ftp.c |
303 |
+@@ -1,11 +1,11 @@ |
304 |
+ #include "hydra-mod.h" |
305 |
+ |
306 |
+ extern char *HYDRA_EXIT; |
307 |
+-char *buf; |
308 |
+ |
309 |
+ int32_t start_ftp(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { |
310 |
+ char *empty = "\"\""; |
311 |
+ char *login, *pass, buffer[510]; |
312 |
++ char *buf; |
313 |
+ |
314 |
+ if (strlen(login = hydra_get_next_login()) == 0) |
315 |
+ login = empty; |
316 |
+@@ -77,6 +77,7 @@ int32_t start_ftp(int32_t s, char *ip, int32_t port, unsigned char options, char |
317 |
+ void service_ftp_core(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE * fp, int32_t port, char *hostname, int32_t tls) { |
318 |
+ int32_t run = 1, next_run = 1, sock = -1; |
319 |
+ int32_t myport = PORT_FTP, mysslport = PORT_FTP_SSL; |
320 |
++ char *buf; |
321 |
+ |
322 |
+ hydra_register_socket(sp); |
323 |
+ if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) |
324 |
+--- a/hydra-http-form.c |
325 |
++++ b/hydra-http-form.c |
326 |
+@@ -53,7 +53,6 @@ Added fail or success condition, getting cookies, and allow 5 redirections by da |
327 |
+ #include "sasl.h" |
328 |
+ |
329 |
+ extern char *HYDRA_EXIT; |
330 |
+-char *buf; |
331 |
+ char *cond; |
332 |
+ extern int32_t http_auth_mechanism; |
333 |
+ |
334 |
+@@ -579,6 +578,7 @@ return -1 if no response from server |
335 |
+ */ |
336 |
+ int32_t analyze_server_response(int32_t s) { |
337 |
+ int32_t runs = 0; |
338 |
++ char *buf; |
339 |
+ |
340 |
+ redirected_flag = 0; |
341 |
+ auth_flag = 0; |
342 |
+--- a/hydra-http-proxy-urlenum.c |
343 |
++++ b/hydra-http-proxy-urlenum.c |
344 |
+@@ -2,7 +2,6 @@ |
345 |
+ #include "sasl.h" |
346 |
+ |
347 |
+ extern char *HYDRA_EXIT; |
348 |
+-char *buf; |
349 |
+ static int32_t http_proxy_auth_mechanism = AUTH_ERROR; |
350 |
+ |
351 |
+ int32_t start_http_proxy_urlenum(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp, char *hostname) { |
352 |
+@@ -12,6 +11,7 @@ int32_t start_http_proxy_urlenum(int32_t s, char *ip, int32_t port, unsigned cha |
353 |
+ char *header = ""; /* XXX TODO */ |
354 |
+ char *ptr; |
355 |
+ int32_t auth = 0; |
356 |
++ char *buf; |
357 |
+ |
358 |
+ login = hydra_get_next_login(); |
359 |
+ if (login == NULL || strlen(login) == 0 || strstr(login, "://") == NULL) { |
360 |
+--- a/hydra-imap.c |
361 |
++++ b/hydra-imap.c |
362 |
+@@ -2,7 +2,6 @@ |
363 |
+ #include "sasl.h" |
364 |
+ |
365 |
+ extern char *HYDRA_EXIT; |
366 |
+-char *buf; |
367 |
+ int32_t counter; |
368 |
+ |
369 |
+ int32_t imap_auth_mechanism = AUTH_CLEAR; |
370 |
+@@ -42,6 +41,7 @@ char *imap_read_server_capacity(int32_t sock) { |
371 |
+ int32_t start_imap(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { |
372 |
+ char *empty = ""; |
373 |
+ char *login, *pass, buffer[500], buffer2[500], *fooptr; |
374 |
++ char *buf = NULL; |
375 |
+ |
376 |
+ if (strlen(login = hydra_get_next_login()) == 0) |
377 |
+ login = empty; |
378 |
+@@ -357,6 +357,7 @@ void service_imap(char *ip, int32_t sp, unsigned char options, char *miscptr, FI |
379 |
+ int32_t run = 1, next_run = 1, sock = -1; |
380 |
+ int32_t myport = PORT_IMAP, mysslport = PORT_IMAP_SSL, disable_tls = 1; |
381 |
+ char *buffer1 = "1 CAPABILITY\r\n"; |
382 |
++ char *buf = NULL; |
383 |
+ |
384 |
+ hydra_register_socket(sp); |
385 |
+ if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) |
386 |
+--- a/hydra-ldap.c |
387 |
++++ b/hydra-ldap.c |
388 |
+@@ -3,8 +3,6 @@ |
389 |
+ |
390 |
+ extern char *HYDRA_EXIT; |
391 |
+ |
392 |
+-unsigned char *buf; |
393 |
+-int32_t counter; |
394 |
+ int32_t tls_required = 0; |
395 |
+ |
396 |
+ 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) { |
397 |
+@@ -13,6 +11,8 @@ int32_t start_ldap(int32_t s, char *ip, int32_t port, unsigned char options, cha |
398 |
+ unsigned char buffer[512]; |
399 |
+ int32_t length = 0; |
400 |
+ int32_t ldap_auth_mechanism = auth_method; |
401 |
++ unsigned char *buf; |
402 |
++ int32_t counter; |
403 |
+ |
404 |
+ /* |
405 |
+ The LDAP "simple" method has three modes of operation: |
406 |
+@@ -354,6 +354,8 @@ int32_t start_ldap(int32_t s, char *ip, int32_t port, unsigned char options, cha |
407 |
+ 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) { |
408 |
+ int32_t run = 1, next_run = 1, sock = -1; |
409 |
+ int32_t myport = PORT_LDAP, mysslport = PORT_LDAP_SSL; |
410 |
++ unsigned char *buf; |
411 |
++ int32_t counter; |
412 |
+ |
413 |
+ hydra_register_socket(sp); |
414 |
+ if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) |
415 |
+--- a/hydra-mongodb.c |
416 |
++++ b/hydra-mongodb.c |
417 |
+@@ -17,7 +17,6 @@ void dummy_mongodb() { |
418 |
+ extern int32_t hydra_data_ready_timed(int32_t socket, long sec, long usec); |
419 |
+ |
420 |
+ extern char *HYDRA_EXIT; |
421 |
+-char *buf; |
422 |
+ |
423 |
+ #define DEFAULT_DB "admin" |
424 |
+ |
425 |
+@@ -31,6 +30,7 @@ int is_error_msg(char *msg) { |
426 |
+ } |
427 |
+ |
428 |
+ int require_auth(int32_t sock) { |
429 |
++ char *buf; |
430 |
+ unsigned char m_hdr[] = |
431 |
+ "\x3f\x00\x00\x00" //messageLength (63) |
432 |
+ "\x00\x00\x00\x41" //requestID |
433 |
+--- a/hydra-mssql.c |
434 |
++++ b/hydra-mssql.c |
435 |
+@@ -3,7 +3,6 @@ |
436 |
+ #define MSLEN 30 |
437 |
+ |
438 |
+ extern char *HYDRA_EXIT; |
439 |
+-char *buf; |
440 |
+ |
441 |
+ unsigned char p_hdr[] = |
442 |
+ "\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"; |
443 |
+@@ -52,6 +51,7 @@ int32_t start_mssql(int32_t s, char *ip, int32_t port, unsigned char options, ch |
444 |
+ char ms_pass[MSLEN + 1]; |
445 |
+ unsigned char len_login, len_pass; |
446 |
+ int32_t ret = -1; |
447 |
++ char *buf; |
448 |
+ |
449 |
+ if (strlen(login = hydra_get_next_login()) == 0) |
450 |
+ login = empty; |
451 |
+--- a/hydra-nntp.c |
452 |
++++ b/hydra-nntp.c |
453 |
+@@ -13,7 +13,6 @@ RFC 4643: Network News Transfer Protocol (NNTP) Extension for Authentication |
454 |
+ int32_t nntp_auth_mechanism = AUTH_CLEAR; |
455 |
+ |
456 |
+ extern char *HYDRA_EXIT; |
457 |
+-char *buf; |
458 |
+ |
459 |
+ char *nntp_read_server_capacity(int32_t sock) { |
460 |
+ char *ptr = NULL; |
461 |
+@@ -51,6 +50,7 @@ int32_t start_nntp(int32_t s, char *ip, int32_t port, unsigned char options, cha |
462 |
+ char *empty = "\"\""; |
463 |
+ char *login, *pass, buffer[500], buffer2[500], *fooptr; |
464 |
+ int32_t i = 1; |
465 |
++ char *buf; |
466 |
+ |
467 |
+ if (strlen(login = hydra_get_next_login()) == 0) |
468 |
+ login = empty; |
469 |
+@@ -270,6 +270,7 @@ void service_nntp(char *ip, int32_t sp, unsigned char options, char *miscptr, FI |
470 |
+ int32_t i = 0, run = 1, next_run = 1, sock = -1; |
471 |
+ int32_t myport = PORT_NNTP, mysslport = PORT_NNTP_SSL, disable_tls = 0; |
472 |
+ char *buffer1 = "CAPABILITIES\r\n"; |
473 |
++ char *buf; |
474 |
+ |
475 |
+ hydra_register_socket(sp); |
476 |
+ if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) |
477 |
+--- a/hydra-oracle-listener.c |
478 |
++++ b/hydra-oracle-listener.c |
479 |
+@@ -22,8 +22,6 @@ void dummy_oracle_listener() { |
480 |
+ #define HASHSIZE 17 |
481 |
+ |
482 |
+ extern char *HYDRA_EXIT; |
483 |
+-char *buf; |
484 |
+-unsigned char *hash; |
485 |
+ int32_t sid_mechanism = AUTH_PLAIN; |
486 |
+ |
487 |
+ int32_t initial_permutation(unsigned char **result, char *p_str, int32_t *sz) { |
488 |
+@@ -143,6 +141,7 @@ int32_t ora_hash_password(char *pass) { |
489 |
+ unsigned char *desresult; |
490 |
+ unsigned char *result; |
491 |
+ char buff[strlen(pass) + 5]; |
492 |
++ unsigned char *hash; |
493 |
+ |
494 |
+ memset(buff, 0, sizeof(buff)); |
495 |
+ |
496 |
+@@ -192,6 +191,8 @@ int32_t start_oracle_listener(int32_t s, char *ip, int32_t port, unsigned char o |
497 |
+ char connect_string[200]; |
498 |
+ char buffer2[260]; |
499 |
+ int32_t siz = 0; |
500 |
++ char *buf; |
501 |
++ unsigned char *hash; |
502 |
+ |
503 |
+ memset(connect_string, 0, sizeof(connect_string)); |
504 |
+ memset(buffer2, 0, sizeof(buffer2)); |
505 |
+--- a/hydra-oracle-sid.c |
506 |
++++ b/hydra-oracle-sid.c |
507 |
+@@ -19,7 +19,6 @@ void dummy_oracle_sid() { |
508 |
+ #define HASHSIZE 16 |
509 |
+ |
510 |
+ extern char *HYDRA_EXIT; |
511 |
+-char *buf; |
512 |
+ unsigned char *hash; |
513 |
+ |
514 |
+ |
515 |
+@@ -40,6 +39,7 @@ int32_t start_oracle_sid(int32_t s, char *ip, int32_t port, unsigned char option |
516 |
+ char connect_string[200]; |
517 |
+ char buffer2[260]; |
518 |
+ int32_t siz = 0; |
519 |
++ char *buf; |
520 |
+ |
521 |
+ memset(connect_string, 0, sizeof(connect_string)); |
522 |
+ memset(buffer2, 0, sizeof(buffer2)); |
523 |
+--- a/hydra-pcnfs.c |
524 |
++++ b/hydra-pcnfs.c |
525 |
+@@ -3,7 +3,6 @@ |
526 |
+ /* pcnfs stuff copied from prout.c */ |
527 |
+ |
528 |
+ extern char *HYDRA_EXIT; |
529 |
+-char *buf; |
530 |
+ |
531 |
+ #define LEN_HDR_RPC 24 |
532 |
+ #define LEN_AUTH_UNIX 72+12 |
533 |
+@@ -37,6 +36,7 @@ int32_t start_pcnfs(int32_t s, char *ip, int32_t port, unsigned char options, ch |
534 |
+ char *empty = ""; |
535 |
+ char *login, *pass, buffer[LEN_HDR_RPC + LEN_AUTH_UNIX + LEN_HDR_PCN_AUTH]; |
536 |
+ char *ptr, *pkt = buffer; |
537 |
++ char *buf; |
538 |
+ |
539 |
+ unsigned long *authp; |
540 |
+ struct timeval tv; |
541 |
+--- a/hydra-pop3.c |
542 |
++++ b/hydra-pop3.c |
543 |
+@@ -13,7 +13,6 @@ typedef struct pool_str { |
544 |
+ } pool; |
545 |
+ |
546 |
+ extern char *HYDRA_EXIT; |
547 |
+-char *buf; |
548 |
+ char apop_challenge[300] = ""; |
549 |
+ pool *plist = NULL, *p = NULL; |
550 |
+ |
551 |
+@@ -120,6 +119,7 @@ STLS |
552 |
+ int32_t start_pop3(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { |
553 |
+ char *empty = "\"\""; |
554 |
+ char *login, *pass, buffer[500], buffer2[500], *fooptr; |
555 |
++ char *buf; |
556 |
+ |
557 |
+ if (strlen(login = hydra_get_next_login()) == 0) |
558 |
+ login = empty; |
559 |
+@@ -416,6 +416,7 @@ int32_t start_pop3(int32_t s, char *ip, int32_t port, unsigned char options, cha |
560 |
+ void service_pop3(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE * fp, int32_t port, char *hostname) { |
561 |
+ int32_t run = 1, next_run = 1, sock = -1; |
562 |
+ char *ptr = NULL; |
563 |
++ char *buf; |
564 |
+ |
565 |
+ //extract data from the pool, ip is the key |
566 |
+ if (plist == NULL) |
567 |
+@@ -520,6 +521,7 @@ int32_t service_pop3_init(char *ip, int32_t sp, unsigned char options, char *mis |
568 |
+ char *capa_str = "CAPA\r\n"; |
569 |
+ char *quit_str = "QUIT\r\n"; |
570 |
+ pool p; |
571 |
++ char *buf; |
572 |
+ |
573 |
+ p.pop3_auth_mechanism = AUTH_CLEAR; |
574 |
+ p.disable_tls = 1; |
575 |
+--- a/hydra-redis.c |
576 |
++++ b/hydra-redis.c |
577 |
+@@ -1,11 +1,11 @@ |
578 |
+ #include "hydra-mod.h" |
579 |
+ |
580 |
+ extern char *HYDRA_EXIT; |
581 |
+-char *buf; |
582 |
+ |
583 |
+ int32_t start_redis(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { |
584 |
+ char *pass, buffer[510]; |
585 |
+ char *empty = ""; |
586 |
++ char *buf; |
587 |
+ |
588 |
+ if (strlen(pass = hydra_get_next_password()) == 0) |
589 |
+ pass = empty; |
590 |
+@@ -134,6 +134,7 @@ int32_t service_redis_init(char *ip, int32_t sp, unsigned char options, char *mi |
591 |
+ int32_t sock = -1; |
592 |
+ int32_t myport = PORT_REDIS, mysslport = PORT_REDIS_SSL; |
593 |
+ char buffer[] = "*1\r\n$4\r\nping\r\n"; |
594 |
++ char *buf; |
595 |
+ |
596 |
+ hydra_register_socket(sp); |
597 |
+ if ((options & OPTION_SSL) == 0) { |
598 |
+--- a/hydra-smtp-enum.c |
599 |
++++ b/hydra-smtp-enum.c |
600 |
+@@ -14,7 +14,6 @@ passwd will be used as the domain name |
601 |
+ #include "hydra-mod.h" |
602 |
+ |
603 |
+ extern char *HYDRA_EXIT; |
604 |
+-char *buf; |
605 |
+ char *err = NULL; |
606 |
+ int32_t tosent = 0; |
607 |
+ |
608 |
+@@ -27,6 +26,7 @@ int32_t smtp_enum_cmd = VRFY; |
609 |
+ int32_t start_smtp_enum(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { |
610 |
+ char *empty = ""; |
611 |
+ char *login, *pass, buffer[500]; |
612 |
++ char *buf; |
613 |
+ |
614 |
+ if (strlen(login = hydra_get_next_login()) == 0) |
615 |
+ login = empty; |
616 |
+@@ -154,6 +154,7 @@ void service_smtp_enum(char *ip, int32_t sp, unsigned char options, char *miscpt |
617 |
+ int32_t run = 1, next_run = 1, sock = -1, i = 0; |
618 |
+ int32_t myport = PORT_SMTP, mysslport = PORT_SMTP_SSL; |
619 |
+ char *buffer = "HELO hydra\r\n"; |
620 |
++ char *buf; |
621 |
+ |
622 |
+ hydra_register_socket(sp); |
623 |
+ if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) |
624 |
+--- a/hydra-socks5.c |
625 |
++++ b/hydra-socks5.c |
626 |
+@@ -10,7 +10,6 @@ This module enable bruteforcing for socks5, only following types are supported: |
627 |
+ */ |
628 |
+ |
629 |
+ extern char *HYDRA_EXIT; |
630 |
+-unsigned char *buf; |
631 |
+ |
632 |
+ int32_t fail_cnt; |
633 |
+ |
634 |
+@@ -18,6 +17,7 @@ int32_t start_socks5(int32_t s, char *ip, int32_t port, unsigned char options, c |
635 |
+ char *empty = ""; |
636 |
+ char *login, *pass, buffer[300]; |
637 |
+ int32_t pport, fud = 0; |
638 |
++ unsigned char *buf; |
639 |
+ |
640 |
+ if (strlen(login = hydra_get_next_login()) == 0) |
641 |
+ login = empty; |
642 |
+--- a/hydra-telnet.c |
643 |
++++ b/hydra-telnet.c |
644 |
+@@ -2,13 +2,13 @@ |
645 |
+ #include <arpa/telnet.h> |
646 |
+ |
647 |
+ extern char *HYDRA_EXIT; |
648 |
+-char *buf; |
649 |
+ int32_t no_line_mode; |
650 |
+ |
651 |
+ int32_t start_telnet(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { |
652 |
+ char *empty = ""; |
653 |
+ char *login, *pass, buffer[300]; |
654 |
+ int32_t i = 0; |
655 |
++ char *buf; |
656 |
+ |
657 |
+ if (strlen(login = hydra_get_next_login()) == 0) |
658 |
+ login = empty; |
659 |
+@@ -99,6 +99,7 @@ int32_t start_telnet(int32_t s, char *ip, int32_t port, unsigned char options, c |
660 |
+ void service_telnet(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE * fp, int32_t port, char *hostname) { |
661 |
+ int32_t run = 1, next_run = 1, sock = -1, fck; |
662 |
+ int32_t myport = PORT_TELNET, mysslport = PORT_TELNET_SSL; |
663 |
++ char *buf; |
664 |
+ |
665 |
+ hydra_register_socket(sp); |
666 |
+ if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) |
667 |
+--- a/hydra-vmauthd.c |
668 |
++++ b/hydra-vmauthd.c |
669 |
+@@ -8,11 +8,11 @@ |
670 |
+ |
671 |
+ extern char *HYDRA_EXIT; |
672 |
+ |
673 |
+-char *buf; |
674 |
+- |
675 |
+ int32_t start_vmauthd(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { |
676 |
+ char *empty = "\"\""; |
677 |
+ char *login, *pass, buffer[300]; |
678 |
++ char *buf; |
679 |
++ |
680 |
+ |
681 |
+ if (strlen(login = hydra_get_next_login()) == 0) |
682 |
+ login = empty; |
683 |
+@@ -68,6 +68,7 @@ int32_t start_vmauthd(int32_t s, char *ip, int32_t port, unsigned char options, |
684 |
+ void service_vmauthd(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE * fp, int32_t port, char *hostname) { |
685 |
+ int32_t run = 1, next_run = 1, sock = -1; |
686 |
+ int32_t myport = PORT_VMAUTHD, mysslport = PORT_VMAUTHD_SSL; |
687 |
++ char *buf; |
688 |
+ |
689 |
+ hydra_register_socket(sp); |
690 |
+ if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) |
691 |
+--- a/hydra-vnc.c |
692 |
++++ b/hydra-vnc.c |
693 |
+@@ -19,7 +19,6 @@ int32_t vnc_client_version = RFB33; |
694 |
+ int32_t failed_auth = 0; |
695 |
+ |
696 |
+ extern char *HYDRA_EXIT; |
697 |
+-char *buf; |
698 |
+ |
699 |
+ /* |
700 |
+ * Encrypt CHALLENGESIZE bytes in memory using a password. |
701 |
+@@ -48,6 +47,7 @@ int32_t start_vnc(int32_t s, char *ip, int32_t port, unsigned char options, char |
702 |
+ char *empty = ""; |
703 |
+ char *pass; |
704 |
+ unsigned char buf2[CHALLENGESIZE + 4]; |
705 |
++ char *buf; |
706 |
+ |
707 |
+ if (strlen(pass = hydra_get_next_password()) == 0) |
708 |
+ pass = empty; |
709 |
+@@ -148,6 +148,7 @@ int32_t start_vnc(int32_t s, char *ip, int32_t port, unsigned char options, char |
710 |
+ void service_vnc(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE * fp, int32_t port, char *hostname) { |
711 |
+ int32_t run = 1, next_run = 1, sock = -1; |
712 |
+ int32_t myport = PORT_VNC, mysslport = PORT_VNC_SSL; |
713 |
++ char *buf; |
714 |
+ |
715 |
+ hydra_register_socket(sp); |
716 |
+ if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) |
717 |
|
718 |
diff --git a/net-analyzer/hydra/files/hydra-9.0-unneeded-buf.patch b/net-analyzer/hydra/files/hydra-9.0-unneeded-buf.patch |
719 |
new file mode 100644 |
720 |
index 00000000000..0055257b04a |
721 |
--- /dev/null |
722 |
+++ b/net-analyzer/hydra/files/hydra-9.0-unneeded-buf.patch |
723 |
@@ -0,0 +1,60 @@ |
724 |
+--- a/hydra-irc.c |
725 |
++++ b/hydra-irc.c |
726 |
+@@ -7,7 +7,6 @@ RFC 1459: Internet Relay Chat Protocol |
727 |
+ */ |
728 |
+ |
729 |
+ extern char *HYDRA_EXIT; |
730 |
+-char *buf; |
731 |
+ char buffer[300] = ""; |
732 |
+ int32_t myport = PORT_IRC, mysslport = PORT_IRC_SSL; |
733 |
+ |
734 |
+--- a/hydra-rexec.c |
735 |
++++ b/hydra-rexec.c |
736 |
+@@ -5,7 +5,6 @@ |
737 |
+ #define COMMAND "/bin/ls /" |
738 |
+ |
739 |
+ extern char *HYDRA_EXIT; |
740 |
+-char *buf; |
741 |
+ |
742 |
+ int32_t start_rexec(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { |
743 |
+ char *empty = ""; |
744 |
+--- a/hydra-rlogin.c |
745 |
++++ b/hydra-rlogin.c |
746 |
+@@ -12,7 +12,6 @@ no memleaks found on 110425 |
747 |
+ #define TERM "vt100/9600" |
748 |
+ |
749 |
+ extern char *HYDRA_EXIT; |
750 |
+-char *buf; |
751 |
+ |
752 |
+ int32_t start_rlogin(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { |
753 |
+ char *empty = ""; |
754 |
+--- a/hydra-rsh.c |
755 |
++++ b/hydra-rsh.c |
756 |
+@@ -11,7 +11,6 @@ no memleaks found on 110425 |
757 |
+ */ |
758 |
+ |
759 |
+ extern char *HYDRA_EXIT; |
760 |
+-char *buf; |
761 |
+ |
762 |
+ int32_t start_rsh(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { |
763 |
+ char *empty = ""; |
764 |
+--- a/hydra-rtsp.c |
765 |
++++ b/hydra-rtsp.c |
766 |
+@@ -12,7 +12,6 @@ |
767 |
+ #include "sasl.h" |
768 |
+ |
769 |
+ extern char *HYDRA_EXIT; |
770 |
+-char *buf; |
771 |
+ char packet[500]; |
772 |
+ char packet2[500]; |
773 |
+ |
774 |
+--- a/hydra-teamspeak.c |
775 |
++++ b/hydra-teamspeak.c |
776 |
+@@ -36,7 +36,6 @@ struct team_speak { |
777 |
+ extern int32_t hydra_data_ready_timed(int32_t socket, long sec, long usec); |
778 |
+ |
779 |
+ extern char *HYDRA_EXIT; |
780 |
+-char *buf; |
781 |
+ |
782 |
+ int32_t start_teamspeak(int32_t s, char *ip, int32_t port, unsigned char options, char *miscptr, FILE * fp) { |
783 |
+ char *empty = ""; |
784 |
|
785 |
diff --git a/net-analyzer/hydra/files/hydra-9.0-vnc.patch b/net-analyzer/hydra/files/hydra-9.0-vnc.patch |
786 |
new file mode 100644 |
787 |
index 00000000000..69c933ee838 |
788 |
--- /dev/null |
789 |
+++ b/net-analyzer/hydra/files/hydra-9.0-vnc.patch |
790 |
@@ -0,0 +1,11 @@ |
791 |
+--- a/hydra-vnc.c |
792 |
++++ b/hydra-vnc.c |
793 |
+@@ -75,7 +75,7 @@ int32_t start_vnc(int32_t s, char *ip, int32_t port, unsigned char options, char |
794 |
+ //supported security type |
795 |
+ switch (buf2[3]) { |
796 |
+ case 0x0: |
797 |
+- hydra_report(stderr, "[ERROR] VNC server told us to quit %c\n", buf[3]); |
798 |
++ hydra_report(stderr, "[ERROR] VNC server told us to quit %c\n", buf2[3]); |
799 |
+ hydra_child_exit(0); |
800 |
+ break; |
801 |
+ case 0x1: |
802 |
|
803 |
diff --git a/net-analyzer/hydra/files/hydra-9999999-fcommon-http.patch b/net-analyzer/hydra/files/hydra-9999999-fcommon-http.patch |
804 |
new file mode 100644 |
805 |
index 00000000000..eea0c3bc3ae |
806 |
--- /dev/null |
807 |
+++ b/net-analyzer/hydra/files/hydra-9999999-fcommon-http.patch |
808 |
@@ -0,0 +1,27 @@ |
809 |
+--- a/hydra-http.c |
810 |
++++ b/hydra-http.c |
811 |
+@@ -12,7 +12,7 @@ char *http_buf = NULL; |
812 |
+ static char end_condition[END_CONDITION_MAX_LEN]; |
813 |
+ int end_condition_type=-1; |
814 |
+ |
815 |
+-int32_t webport, freemischttp = 0; |
816 |
++int32_t freemischttp = 0; |
817 |
+ int32_t http_auth_mechanism = AUTH_UNASSIGNED; |
818 |
+ |
819 |
+ 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) { |
820 |
+@@ -22,6 +22,7 @@ int32_t start_http(int32_t s, char *ip, int32_t port, unsigned char options, cha |
821 |
+ char *ptr, *fooptr; |
822 |
+ int32_t complete_line = 0, buffer_size; |
823 |
+ char tmpreplybuf[1024] = "", *tmpreplybufptr; |
824 |
++ int32_t webport; |
825 |
+ |
826 |
+ if (strlen(login = hydra_get_next_login()) == 0) |
827 |
+ login = empty; |
828 |
+@@ -291,6 +292,7 @@ void service_http(char *ip, int32_t sp, unsigned char options, char *miscptr, FI |
829 |
+ int32_t myport = PORT_HTTP, mysslport = PORT_HTTP_SSL; |
830 |
+ char *ptr, *ptr2; |
831 |
+ ptr_header_node ptr_head = NULL; |
832 |
++ int32_t webport; |
833 |
+ |
834 |
+ hydra_register_socket(sp); |
835 |
+ if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) |
836 |
|
837 |
diff --git a/net-analyzer/hydra/hydra-9999999.ebuild b/net-analyzer/hydra/hydra-9.0-r1.ebuild |
838 |
similarity index 66% |
839 |
copy from net-analyzer/hydra/hydra-9999999.ebuild |
840 |
copy to net-analyzer/hydra/hydra-9.0-r1.ebuild |
841 |
index 9ef6f73c7ec..c7b1e8aa733 100644 |
842 |
--- a/net-analyzer/hydra/hydra-9999999.ebuild |
843 |
+++ b/net-analyzer/hydra/hydra-9.0-r1.ebuild |
844 |
@@ -1,16 +1,16 @@ |
845 |
-# Copyright 1999-2019 Gentoo Authors |
846 |
+# Copyright 1999-2020 Gentoo Authors |
847 |
# Distributed under the terms of the GNU General Public License v2 |
848 |
|
849 |
EAPI=7 |
850 |
-inherit git-r3 toolchain-funcs |
851 |
+inherit toolchain-funcs |
852 |
|
853 |
DESCRIPTION="Parallelized network login hacker" |
854 |
HOMEPAGE="https://github.com/vanhauser-thc/thc-hydra" |
855 |
-EGIT_REPO_URI="https://github.com/vanhauser-thc/thc-hydra" |
856 |
+SRC_URI="https://github.com/vanhauser-thc/thc-hydra/archive/v${PV}.tar.gz -> ${P}.tar.gz" |
857 |
|
858 |
LICENSE="GPL-3" |
859 |
SLOT="0" |
860 |
-KEYWORDS="" |
861 |
+KEYWORDS="~amd64 ~ppc ~x86" |
862 |
IUSE=" |
863 |
debug firebird gcrypt gtk idn libressl memcached mongodb mysql ncp ncurses |
864 |
oracle pcre postgres rdp libssh subversion zlib |
865 |
@@ -45,6 +45,15 @@ DEPEND=" |
866 |
${RDEPEND} |
867 |
virtual/pkgconfig |
868 |
" |
869 |
+PATCHES=( |
870 |
+ "${FILESDIR}"/${PN}-9.0-fcommon-gtk.patch |
871 |
+ "${FILESDIR}"/${PN}-9.0-fcommon-http.patch |
872 |
+ "${FILESDIR}"/${PN}-9.0-fcommon-mod.patch |
873 |
+ "${FILESDIR}"/${PN}-9.0-fcommon-mods.patch |
874 |
+ "${FILESDIR}"/${PN}-9.0-unneeded-buf.patch |
875 |
+ "${FILESDIR}"/${PN}-9.0-vnc.patch |
876 |
+) |
877 |
+S=${WORKDIR}/thc-${P} |
878 |
|
879 |
src_prepare() { |
880 |
default |
881 |
@@ -81,21 +90,21 @@ src_configure() { |
882 |
|
883 |
hydra_sed firebird '-lfbclient' '' '-DLIBFIREBIRD' |
884 |
hydra_sed gcrypt '-lgcrypt' '$( ${CTARGET:-${CHOST}}-libgcrypt-config --libs )' '-DHAVE_GCRYPT' |
885 |
- hydra_sed idn '-lidn' '$( "${PKG_CONFIG}" --libs libidn )' '-DLIBIDN -DHAVE_PR29_H' |
886 |
- hydra_sed libssh '-lssh' '$( "${PKG_CONFIG}" --libs libssh )' '-DLIBSSH' |
887 |
- hydra_sed memcached '-lmemcached' '$( "${PKG_CONFIG}" --libs libmemcached )' '-DLIBMCACHED' |
888 |
- hydra_sed mongodb '-lmongoc-1.0' '$( "${PKG_CONFIG}" --libs libmongoc-1.0 )' '-DLIBMONGODB\|-DLIBBSON' |
889 |
+ hydra_sed idn '-lidn' '$( "${PKG_CONFIG}" --libs libidn )' '-DLIBIDN -DHAVE_PR29_H' |
890 |
+ hydra_sed libssh '-lssh' '$( "${PKG_CONFIG}" --libs libssh )' '-DLIBSSH' |
891 |
+ hydra_sed memcached '-lmemcached' '$( "${PKG_CONFIG}" --libs libmemcached )' '-DLIBMCACHED' |
892 |
+ hydra_sed mongodb '-lmongoc-1.0' '$( "${PKG_CONFIG}" --libs libmongoc-1.0 )' '-DLIBMONGODB\|-DLIBBSON' |
893 |
hydra_sed mysql '-lmysqlclient' '$( ${CTARGET:-${CHOST}}-mysql_config --libs )' '-DLIBMYSQLCLIENT' |
894 |
hydra_sed ncp '-lncp' '' '-DLIBNCP' |
895 |
- hydra_sed ncurses '-lcurses' '$( "${PKG_CONFIG}" --libs ncurses )' '-DLIBNCURSES' |
896 |
- hydra_sed pcre '-lpcre' '$( "${PKG_CONFIG}" --libs libpcre )' '-DHAVE_PCRE' |
897 |
- hydra_sed postgres '-lpq' '$( "${PKG_CONFIG}" --libs libpq )' '-DLIBPOSTGRES' |
898 |
+ hydra_sed ncurses '-lcurses' '$( "${PKG_CONFIG}" --libs ncurses )' '-DLIBNCURSES' |
899 |
+ hydra_sed pcre '-lpcre' '$( "${PKG_CONFIG}" --libs libpcre )' '-DHAVE_PCRE' |
900 |
+ hydra_sed postgres '-lpq' '$( "${PKG_CONFIG}" --libs libpq )' '-DLIBPOSTGRES' |
901 |
hydra_sed oracle '-locci -lclntsh' '' '-DLIBORACLE' |
902 |
- hydra_sed rdp '-lfreerdp2' '$( "${PKG_CONFIG}" --libs freerdp2 )' '-DLIBFREERDP2' |
903 |
+ hydra_sed rdp '-lfreerdp2' '$( "${PKG_CONFIG}" --libs freerdp2 )' '-DLIBFREERDP2' |
904 |
# TODO: https://bugs.gentoo.org/686148 |
905 |
- #hydra_sed subversion '-lsvn_client-1 -lapr-1 -laprutil-1 -lsvn_subr-1' '$( "${PKG_CONFIG}" --libs libsvn_client )' '-DLIBSVN' |
906 |
+ #hydra_sed subversion '-lsvn_client-1 -lapr-1 -laprutil-1 -lsvn_subr-1' '$( "${PKG_CONFIG}" --libs libsvn_client )' '-DLIBSVN' |
907 |
hydra_sed subversion '-lsvn_client-1 -lapr-1 -laprutil-1 -lsvn_subr-1' '' '-DLIBSVN' |
908 |
- hydra_sed zlib '-lz' '$( "${PKG_CONFIG}" --libs zlib )' '-DHAVE_ZLIB' |
909 |
+ hydra_sed zlib '-lz' '$( "${PKG_CONFIG}" --libs zlib )' '-DHAVE_ZLIB' |
910 |
|
911 |
sh configure \ |
912 |
$(use gtk || echo --disable-xhydra) \ |
913 |
@@ -118,5 +127,5 @@ src_compile() { |
914 |
src_install() { |
915 |
dobin hydra pw-inspector |
916 |
use gtk && dobin hydra-gtk/src/xhydra |
917 |
- dodoc CHANGES README.md |
918 |
+ dodoc CHANGES README |
919 |
} |
920 |
|
921 |
diff --git a/net-analyzer/hydra/hydra-9999999.ebuild b/net-analyzer/hydra/hydra-9999999.ebuild |
922 |
index 9ef6f73c7ec..6f65020dd57 100644 |
923 |
--- a/net-analyzer/hydra/hydra-9999999.ebuild |
924 |
+++ b/net-analyzer/hydra/hydra-9999999.ebuild |
925 |
@@ -1,4 +1,4 @@ |
926 |
-# Copyright 1999-2019 Gentoo Authors |
927 |
+# Copyright 1999-2020 Gentoo Authors |
928 |
# Distributed under the terms of the GNU General Public License v2 |
929 |
|
930 |
EAPI=7 |
931 |
@@ -45,6 +45,14 @@ DEPEND=" |
932 |
${RDEPEND} |
933 |
virtual/pkgconfig |
934 |
" |
935 |
+PATCHES=( |
936 |
+ "${FILESDIR}"/${PN}-9.0-fcommon-gtk.patch |
937 |
+ "${FILESDIR}"/${PN}-9.0-fcommon-mod.patch |
938 |
+ "${FILESDIR}"/${PN}-9.0-fcommon-mods.patch |
939 |
+ "${FILESDIR}"/${PN}-9.0-unneeded-buf.patch |
940 |
+ "${FILESDIR}"/${PN}-9.0-vnc.patch |
941 |
+ "${FILESDIR}"/${PN}-9999999-fcommon-http.patch |
942 |
+) |
943 |
|
944 |
src_prepare() { |
945 |
default |
946 |
@@ -81,21 +89,21 @@ src_configure() { |
947 |
|
948 |
hydra_sed firebird '-lfbclient' '' '-DLIBFIREBIRD' |
949 |
hydra_sed gcrypt '-lgcrypt' '$( ${CTARGET:-${CHOST}}-libgcrypt-config --libs )' '-DHAVE_GCRYPT' |
950 |
- hydra_sed idn '-lidn' '$( "${PKG_CONFIG}" --libs libidn )' '-DLIBIDN -DHAVE_PR29_H' |
951 |
- hydra_sed libssh '-lssh' '$( "${PKG_CONFIG}" --libs libssh )' '-DLIBSSH' |
952 |
- hydra_sed memcached '-lmemcached' '$( "${PKG_CONFIG}" --libs libmemcached )' '-DLIBMCACHED' |
953 |
- hydra_sed mongodb '-lmongoc-1.0' '$( "${PKG_CONFIG}" --libs libmongoc-1.0 )' '-DLIBMONGODB\|-DLIBBSON' |
954 |
+ hydra_sed idn '-lidn' '$( "${PKG_CONFIG}" --libs libidn )' '-DLIBIDN -DHAVE_PR29_H' |
955 |
+ hydra_sed libssh '-lssh' '$( "${PKG_CONFIG}" --libs libssh )' '-DLIBSSH' |
956 |
+ hydra_sed memcached '-lmemcached' '$( "${PKG_CONFIG}" --libs libmemcached )' '-DLIBMCACHED' |
957 |
+ hydra_sed mongodb '-lmongoc-1.0' '$( "${PKG_CONFIG}" --libs libmongoc-1.0 )' '-DLIBMONGODB\|-DLIBBSON' |
958 |
hydra_sed mysql '-lmysqlclient' '$( ${CTARGET:-${CHOST}}-mysql_config --libs )' '-DLIBMYSQLCLIENT' |
959 |
hydra_sed ncp '-lncp' '' '-DLIBNCP' |
960 |
- hydra_sed ncurses '-lcurses' '$( "${PKG_CONFIG}" --libs ncurses )' '-DLIBNCURSES' |
961 |
- hydra_sed pcre '-lpcre' '$( "${PKG_CONFIG}" --libs libpcre )' '-DHAVE_PCRE' |
962 |
- hydra_sed postgres '-lpq' '$( "${PKG_CONFIG}" --libs libpq )' '-DLIBPOSTGRES' |
963 |
+ hydra_sed ncurses '-lcurses' '$( "${PKG_CONFIG}" --libs ncurses )' '-DLIBNCURSES' |
964 |
+ hydra_sed pcre '-lpcre' '$( "${PKG_CONFIG}" --libs libpcre )' '-DHAVE_PCRE' |
965 |
+ hydra_sed postgres '-lpq' '$( "${PKG_CONFIG}" --libs libpq )' '-DLIBPOSTGRES' |
966 |
hydra_sed oracle '-locci -lclntsh' '' '-DLIBORACLE' |
967 |
- hydra_sed rdp '-lfreerdp2' '$( "${PKG_CONFIG}" --libs freerdp2 )' '-DLIBFREERDP2' |
968 |
+ hydra_sed rdp '-lfreerdp2' '$( "${PKG_CONFIG}" --libs freerdp2 )' '-DLIBFREERDP2' |
969 |
# TODO: https://bugs.gentoo.org/686148 |
970 |
- #hydra_sed subversion '-lsvn_client-1 -lapr-1 -laprutil-1 -lsvn_subr-1' '$( "${PKG_CONFIG}" --libs libsvn_client )' '-DLIBSVN' |
971 |
+ #hydra_sed subversion '-lsvn_client-1 -lapr-1 -laprutil-1 -lsvn_subr-1' '$( "${PKG_CONFIG}" --libs libsvn_client )' '-DLIBSVN' |
972 |
hydra_sed subversion '-lsvn_client-1 -lapr-1 -laprutil-1 -lsvn_subr-1' '' '-DLIBSVN' |
973 |
- hydra_sed zlib '-lz' '$( "${PKG_CONFIG}" --libs zlib )' '-DHAVE_ZLIB' |
974 |
+ hydra_sed zlib '-lz' '$( "${PKG_CONFIG}" --libs zlib )' '-DHAVE_ZLIB' |
975 |
|
976 |
sh configure \ |
977 |
$(use gtk || echo --disable-xhydra) \ |