summaryrefslogtreecommitdiff
path: root/include/asterisk/app.h
diff options
context:
space:
mode:
authorRussell Bryant <russell@russellbryant.com>2006-05-25 18:31:19 +0000
committerRussell Bryant <russell@russellbryant.com>2006-05-25 18:31:19 +0000
commit238cdb249fc3f831cc5d28e1c69855a6bb3dca53 (patch)
tree708ea01afbf6bf30580cf15a2baa4b615bfb86c2 /include/asterisk/app.h
parent35d729fb40d57c635bc7f27589c43bbb63c5b575 (diff)
Add the ability to retrieve the exit code of the forked AGI process. If there
is an error executing the AGI script, or the AGI script itself returns a non-zero value, the AGISTATUS variable will now be set to FAILURE instead of SUCCESS. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@30328 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'include/asterisk/app.h')
-rw-r--r--include/asterisk/app.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/include/asterisk/app.h b/include/asterisk/app.h
index af3aa31f9..4244c79b5 100644
--- a/include/asterisk/app.h
+++ b/include/asterisk/app.h
@@ -120,6 +120,27 @@ int ast_app_messagecount(const char *context, const char *mailbox, const char *f
int ast_safe_system(const char *s);
/*!
+ * \brief Replace the SIGCHLD handler
+ *
+ * Normally, Asterisk has a SIGCHLD handler that is cleaning up all zombie
+ * processes from forking elsewhere in Asterisk. However, if you want to
+ * wait*() on the process to retrieve information about it's exit status,
+ * then this signal handler needs to be temporaraly replaced.
+ *
+ * Code that executes this function *must* call ast_unreplace_sigchld()
+ * after it is finished doing the wait*().
+ */
+void ast_replace_sigchld(void);
+
+/*!
+ * \brief Restore the SIGCHLD handler
+ *
+ * This function is called after a call to ast_replace_sigchld. It restores
+ * the SIGCHLD handler that cleans up any zombie processes.
+ */
+void ast_unreplace_sigchld(void);
+
+/*!
\brief Send DTMF to a channel
\param chan The channel that will receive the DTMF frames