mirror of
https://github.com/vanhauser-thc/thc-hydra.git
synced 2025-08-20 21:33:51 -07:00
Refactor service_init
This commit is contained in:
parent
dfef658cf8
commit
5dc883fb4b
1 changed files with 15 additions and 10 deletions
13
hydra.c
13
hydra.c
|
@ -1280,11 +1280,14 @@ static const struct {
|
|||
void hydra_service_init(int target_no) {
|
||||
int x = 99;
|
||||
int i = 0;
|
||||
hydra_target* t = hydra_targets[target_no];
|
||||
char* miscptr = hydra_options.miscptr;
|
||||
FILE* ofp = hydra_brains.ofp;
|
||||
|
||||
for (i = 0; i < sizeof(services) / sizeof(services[0]); i++) {
|
||||
if (strcmp(hydra_options.service, services[i].name) == 0) {
|
||||
if (services[i].init) {
|
||||
x = services[i].init(hydra_targets[target_no]->ip, -1, options, hydra_options.miscptr, hydra_brains.ofp, hydra_targets[target_no]->port, hydra_targets[target_no]->target);
|
||||
x = services[i].init(t->ip, -1, options, miscptr, ofp, t->port, t->target);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -1294,10 +1297,13 @@ void hydra_service_init(int target_no) {
|
|||
// dirty workaround here:
|
||||
#ifdef LIBSSH
|
||||
if (strcmp(hydra_options.service, "ssh") == 0)
|
||||
x = service_ssh_init(hydra_targets[target_no]->ip, -1, options, login_ptr, hydra_brains.ofp, hydra_targets[target_no]->port, hydra_targets[target_no]->target);
|
||||
x = service_ssh_init(t->ip, -1, options, login_ptr, ofp, t->port, t->target);
|
||||
#endif
|
||||
|
||||
if (x != 0 && x != 99) {
|
||||
if (x == 0 || x == 99) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (x > 0 && x < 4)
|
||||
hydra_targets[target_no]->done = x;
|
||||
else
|
||||
|
@ -1305,7 +1311,6 @@ void hydra_service_init(int target_no) {
|
|||
hydra_brains.finished++;
|
||||
if (hydra_brains.targets == 1)
|
||||
exit(-1);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue