mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-16 06:48:25 +00:00
Fix potential seg if someone doesn't specify an extension
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4122 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -86,7 +86,7 @@ static int record_exec(struct ast_channel *chan, void *data)
|
|||||||
|
|
||||||
|
|
||||||
/* The next few lines of code parse out the filename and header from the input string */
|
/* The next few lines of code parse out the filename and header from the input string */
|
||||||
if (!data) { /* no data implies no filename or anything is present */
|
if (!data || !ast_strlen_zero(data)) { /* no data implies no filename or anything is present */
|
||||||
ast_log(LOG_WARNING, "Record requires an argument (filename)\n");
|
ast_log(LOG_WARNING, "Record requires an argument (filename)\n");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@@ -106,6 +106,10 @@ static int record_exec(struct ast_channel *chan, void *data)
|
|||||||
if (!ext)
|
if (!ext)
|
||||||
ext = strchr(filename, ':');
|
ext = strchr(filename, ':');
|
||||||
}
|
}
|
||||||
|
if (!ext) {
|
||||||
|
ast_log(LOG_WARNING, "No extension specified to filename!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
if (silstr) {
|
if (silstr) {
|
||||||
if ((sscanf(silstr, "%d", &i) == 1) && (i > -1))
|
if ((sscanf(silstr, "%d", &i) == 1) && (i > -1))
|
||||||
|
|||||||
Reference in New Issue
Block a user