diff options
author | seanbright <seanbright@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-08-18 16:38:36 +0000 |
---|---|---|
committer | seanbright <seanbright@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-08-18 16:38:36 +0000 |
commit | 47c42e6fb6707ee8c22c6c06f30abdd9005de587 (patch) | |
tree | a87063e693a52107d26173ca8811ec47daa8cf36 | |
parent | a006d1d1a62e9f4255221203c34276c2f60a945d (diff) |
Merged revisions 212763 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r212763 | seanbright | 2009-08-18 12:36:00 -0400 (Tue, 18 Aug 2009) | 11 lines
Delay the creation of temporary files until we have a valid manager command to handle.
Without this patch, asterisk creates a temporary file before determining if the
specified command is valid. If invalid, we weren't properly cleaning up the file.
(closes issue #15730)
Reported by: zmehmood
Patches:
M15730.diff uploaded by junky (license 177)
Tested by: zmehmood
........
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@212764 f38db490-d61c-443f-a65b-d21fe96a405b
-rw-r--r-- | main/manager.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/main/manager.c b/main/manager.c index f6501c5e0..e9a997086 100644 --- a/main/manager.c +++ b/main/manager.c @@ -3126,7 +3126,7 @@ static int action_command(struct mansession *s, const struct message *m) const char *id = astman_get_header(m, "ActionID"); char *buf, *final_buf; char template[] = "/tmp/ast-ami-XXXXXX"; /* template for temporary file */ - int fd = mkstemp(template); + int fd; off_t l; if (ast_strlen_zero(cmd)) { @@ -3139,6 +3139,8 @@ static int action_command(struct mansession *s, const struct message *m) return 0; } + fd = mkstemp(template); + astman_append(s, "Response: Follows\r\nPrivilege: Command\r\n"); if (!ast_strlen_zero(id)) { astman_append(s, "ActionID: %s\r\n", id); |