summaryrefslogtreecommitdiff
path: root/apps/app_voicemail.c
diff options
context:
space:
mode:
authorMark Spencer <markster@digium.com>2004-03-08 05:04:11 +0000
committerMark Spencer <markster@digium.com>2004-03-08 05:04:11 +0000
commit674d81ce27ca5dab83f4f3de58ad3df634044d61 (patch)
tree0efa4a7afa46d166cb5b7dad58d41cf54f1e4c15 /apps/app_voicemail.c
parent0d5dcf7358f0e25bce29f28076e0ab3996bf4246 (diff)
Fix strncpy auditing (bug #1152)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2370 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps/app_voicemail.c')
-rwxr-xr-xapps/app_voicemail.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c
index dd3e315fb..9272ce6e5 100755
--- a/apps/app_voicemail.c
+++ b/apps/app_voicemail.c
@@ -2269,7 +2269,7 @@ static int forward_message(struct ast_channel *chan, char *context, char *dir, i
system(sys);
todircount = count_messages(todir);
- strncpy(tmp, fmt, sizeof(tmp));
+ strncpy(tmp, fmt, sizeof(tmp) - 1);
stringp = tmp;
while((s = strsep(&stringp, "|"))) {
/* XXX This is a hack -- we should use build_filename or similar XXX */
@@ -3019,22 +3019,22 @@ static int append_mailbox(char *context, char *mbox, char *data)
char *stringp;
char *s;
struct ast_vm_user *vmu;
- strncpy(tmp, data, sizeof(tmp));
+ strncpy(tmp, data, sizeof(tmp) - 1);
vmu = malloc(sizeof(struct ast_vm_user));
if (vmu) {
memset(vmu, 0, sizeof(struct ast_vm_user));
- strncpy(vmu->context, context, sizeof(vmu->context));
- strncpy(vmu->mailbox, mbox, sizeof(vmu->mailbox));
+ strncpy(vmu->context, context, sizeof(vmu->context) - 1);
+ strncpy(vmu->mailbox, mbox, sizeof(vmu->mailbox) - 1);
vmu->attach = -1;
stringp = tmp;
if ((s = strsep(&stringp, ",")))
- strncpy(vmu->password, s, sizeof(vmu->password));
+ strncpy(vmu->password, s, sizeof(vmu->password) - 1);
if (stringp && (s = strsep(&stringp, ",")))
- strncpy(vmu->fullname, s, sizeof(vmu->fullname));
+ strncpy(vmu->fullname, s, sizeof(vmu->fullname) - 1);
if (stringp && (s = strsep(&stringp, ",")))
- strncpy(vmu->email, s, sizeof(vmu->email));
+ strncpy(vmu->email, s, sizeof(vmu->email) - 1);
if (stringp && (s = strsep(&stringp, ",")))
- strncpy(vmu->pager, s, sizeof(vmu->pager));
+ strncpy(vmu->pager, s, sizeof(vmu->pager) - 1);
if (stringp && (s = strsep(&stringp, ",")))
apply_options(vmu, s);
vmu->next = NULL;