[asterisk-commits] seanbright: branch 1.4 r212763 - /branches/1.4/main/manager.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Tue Aug 18 11:36:05 CDT 2009


Author: seanbright
Date: Tue Aug 18 11:36:00 2009
New Revision: 212763

URL: http://svn.asterisk.org/svn-view/asterisk?view=rev&rev=212763
Log:
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

Modified:
    branches/1.4/main/manager.c

Modified: branches/1.4/main/manager.c
URL: http://svn.asterisk.org/svn-view/asterisk/branches/1.4/main/manager.c?view=diff&rev=212763&r1=212762&r2=212763
==============================================================================
--- branches/1.4/main/manager.c (original)
+++ branches/1.4/main/manager.c Tue Aug 18 11:36:00 2009
@@ -1798,7 +1798,7 @@
 	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)) {
@@ -1810,6 +1810,8 @@
 		astman_send_error(s, m, "Command blacklisted");
 		return 0;
 	}
+
+	fd = mkstemp(template);
 
 	astman_append(s, "Response: Follows\r\nPrivilege: Command\r\n");
 	if (!ast_strlen_zero(id))




More information about the asterisk-commits mailing list