summaryrefslogtreecommitdiff
path: root/include
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
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')
-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