$all_ap{$_}->{'webloginpostdata'} = {
'var:main' => 'menu',
'testwebcm' => 'webcm',
'login:command/username' => '',
'login:command/password' => '',
'var:connecting1' => '0'
};
####
$all_ap{$_}->{'webadminpostdata'} = {
'var:main' => 'menu',
'var:style' => 'style5',
'settings/username' => $all_ap{$_}->{'webuser'},
'settings/password' => $all_ap{$_}->{'webpass'},
'settings/password_confirm' => $all_ap{$_}->{'webpass'},
'settings/idle_timeout' => '30'
};
####
my $login_status = loginweb($all_ap{$_}->{'webloginurl'}, $all_ap{$_}->{'webloginpostdata'});
if ($login_status eq 'success'){
## Call next subroutine
my $setpassword = changewebpass($all_ap{$_}->{'webadminurl'}, $all_ap{$_}->{'webadminpostdata'});
if ($setpassword ne 'success'){
print "Can\'t change password\n";
}else{
print "New login created:\n\t username: $all_ap{$_}->{'webuser'} \n\t password: $all_ap{$_}->{'webpass'}\n";
}
####
sub loginweb{
my $url = shift;
my $postdata = shift;
my $username;
my $password;
open PASSLIST, "appasswd.txt" or die $!;
while (){
$username = (split / === /, $_)[0];
$password = (split / === /, $_)[1];
chomp ($username, $password);
print "\nTrying username: \'$username\' password: \'$password\'";
$$postdata{'login:command/username'} = ($username eq '')?'':$username;
$$postdata{'login:command/password'} = ($password eq '')?'':$password;
my $res = $ua->request(POST $url, $postdata);
if ($res->content =~ /Basic\s+Home\s+Menu/){
print " SUCCESS!!!\n";
return 'success';
}else{
next;
}
}
####
sub changewebpass{
my $url = shift;
my $postdata = shift;
my $res = $ua->request(POST $url, $postdata);
if ($res->is_success){
return 'success';
}else{
return 'failed';
}
}
####
my %webloginpostdata = (...);
my %webadminpostdata = (...);
loginweb(\%webloginpostdata)