Merged revisions 143736 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r143736 | seanbright | 2008-09-19 20:50:10 -0400 (Fri, 19 Sep 2008) | 9 lines Make vmail.cgi work with mailboxes defined in users.conf, too. (closes issue #13187) Reported by: netvoice Patches: 20080911__bug13187.diff.txt uploaded by Corydon76 (license 14) (Slightly modified to take alchamist's comments on mantis into account) Tested by: msales, alchamist, seanbright ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@143737 f38db490-d61c-443f-a65b-d21fe96a405b
This commit is contained in:
parent
59c179f163
commit
0a4cc3ed00
|
@ -193,7 +193,40 @@ sub check_login($$)
|
|||
}
|
||||
}
|
||||
close(VMAIL);
|
||||
return ("", $category);
|
||||
return check_login_users();
|
||||
}
|
||||
|
||||
sub check_login_users {
|
||||
my ($mbox, $context) = split(/\@/, param('mailbox'));
|
||||
my $pass = param('password');
|
||||
my ($found, $fullname) = (0, "");
|
||||
open VMAIL, "</etc/asterisk/users.conf";
|
||||
while (<VMAIL>) {
|
||||
chomp;
|
||||
if (m/\[(.*)\]/) {
|
||||
if ($1 eq $mbox) {
|
||||
$found = 1;
|
||||
} elsif ($found == 2) {
|
||||
close VMAIL;
|
||||
return (($fullname ? $fullname : "Extension $mbox in $context"), $context);
|
||||
} else {
|
||||
$found = 0;
|
||||
}
|
||||
} elsif ($found) {
|
||||
my ($var, $value) = split /\s*=\s*/, $_, 2;
|
||||
if ($var eq 'vmsecret' and $value eq $pass) {
|
||||
$found = 2;
|
||||
} elsif ($var eq 'fullname') {
|
||||
$fullname = $value;
|
||||
if ($found == 2) {
|
||||
close VMAIL;
|
||||
return ($fullname, $context);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
close VMAIL;
|
||||
return ("", "");
|
||||
}
|
||||
|
||||
sub validmailbox($$$$)
|
||||
|
|
Reference in New Issue