Handle arbitrary long dial sequences (like what we need at Astricon)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3817 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Mark Spencer
2004-09-22 05:19:06 +00:00
parent a2297d6776
commit 78531a0f32

View File

@@ -3,9 +3,9 @@
*
* Trivial application to dial a channel and send an URL on answer
*
* Copyright (C) 1999, Mark Spencer
* Copyright (C) 1999-2004, Digium, Inc.
*
* Mark Spencer <markster@linux-support.net>
* Mark Spencer <markster@digium.com>
*
* This program is free software, distributed under the terms of
* the GNU General Public License
@@ -411,7 +411,7 @@ static int dial_exec(struct ast_channel *chan, void *data)
{
int res=-1;
struct localuser *u;
char info[256], *peers, *timeout, *tech, *number, *rest, *cur;
char *info, *peers, *timeout, *tech, *number, *rest, *cur;
char privdb[256] = "", *s;
char announcemsg[256] = "", *ann;
struct localuser *outgoing=NULL, *tmp;
@@ -462,10 +462,13 @@ static int dial_exec(struct ast_channel *chan, void *data)
ast_log(LOG_WARNING, "Dial requires an argument (technology1/number1&technology2/number2...|optional timeout|options)\n");
return -1;
}
if (!(info = ast_strdupa(data))) {
ast_log(LOG_WARNING, "Unable to dupe data :(\n");
return -1;
}
LOCAL_USER_ADD(u);
strncpy(info, (char *)data, sizeof(info) - 1);
peers = info;
if (peers) {