mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-31 02:37:10 +00:00 
			
		
		
		
	Merged revisions 114195 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r114195 | tilghman | 2008-04-17 07:56:38 -0500 (Thu, 17 Apr 2008) | 8 lines Add special case for when the agi cannot be executed, to comply with the documentation that we return failure in that case. (closes issue #12462) Reported by: fmueller Patches: 20080416__bug12462.diff.txt uploaded by Corydon76 (license 14) Tested by: fmueller ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114196 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
		| @@ -693,6 +693,8 @@ static enum agi_result launch_script(struct ast_channel *chan, char *script, cha | ||||
| 		execv(script, argv); | ||||
| 		/* Can't use ast_log since FD's are closed */ | ||||
| 		ast_child_verbose(1, "Failed to execute '%s': %s", script, strerror(errno)); | ||||
| 		/* Special case to set status of AGI to failure */ | ||||
| 		fprintf(stdout, "failure\n"); | ||||
| 		fflush(stdout); | ||||
| 		_exit(1); | ||||
| 	} | ||||
| @@ -2646,6 +2648,12 @@ static enum agi_result run_agi(struct ast_channel *chan, char *request, AGI *agi | ||||
| 				break; | ||||
| 			} | ||||
|  | ||||
| 			/* Special case for inability to execute child process */ | ||||
| 			if (*buf && strncasecmp(buf, "failure", 7) == 0) { | ||||
| 				returnstatus = AGI_RESULT_FAILURE; | ||||
| 				break; | ||||
| 			} | ||||
|  | ||||
| 			/* get rid of trailing newline, if any */ | ||||
| 			if (*buf && buf[strlen(buf) - 1] == '\n') | ||||
| 				buf[strlen(buf) - 1] = 0; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user