Fix to bug 4118

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5620 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Matthew Fredrickson
2005-05-10 19:05:50 +00:00
parent e70d3db697
commit 2bdce17b5a

View File

@@ -4409,6 +4409,14 @@ static int vm_authenticate(struct ast_channel *chan, char *mailbox, int mailbox_
}
if (useadsi)
adsi_password(chan);
if (prefix && !ast_strlen_zero(prefix)) {
char fullusername[80] = "";
strncpy(fullusername, prefix, sizeof(fullusername) - 1);
strncat(fullusername, mailbox, sizeof(fullusername) - 1 - strlen(fullusername));
strncpy(mailbox, fullusername, mailbox_size - 1);
}
vmu = find_user(&vmus, context, mailbox);
if (vmu && (vmu->password[0] == '\0' || (vmu->password[0] == '-' && vmu->password[1] == '\0'))) {
/* saved password is blank, so don't bother asking */
@@ -4423,12 +4431,7 @@ static int vm_authenticate(struct ast_channel *chan, char *mailbox, int mailbox_
return -1;
}
}
if (prefix && !ast_strlen_zero(prefix)) {
char fullusername[80] = "";
strncpy(fullusername, prefix, sizeof(fullusername) - 1);
strncat(fullusername, mailbox, sizeof(fullusername) - 1 - strlen(fullusername));
strncpy(mailbox, fullusername, mailbox_size - 1);
}
if (vmu) {
passptr = vmu->password;
if (passptr[0] == '-') passptr++;