* See the file "LICENSE.TERMS" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * $Id: fcgiapp.h,v 1.8 2001/06/22 14:19:23 robs Exp $
+ * $Id: fcgiapp.h,v 1.14 2003/06/22 00:16:44 robs Exp $
*/
#ifndef _FCGIAPP_H
#include <varargs.h>
#endif
-#if defined (c_plusplus) || defined (__cplusplus)
-extern "C" {
-#endif
-
#ifndef DLLAPI
#ifdef _WIN32
#define DLLAPI __declspec(dllimport)
#endif
#endif
+#if defined (c_plusplus) || defined (__cplusplus)
+extern "C" {
+#endif
+
/*
* Error codes. Assigned to avoid conflict with EOF and errno(2).
*/
FCGX_Stream *in;
FCGX_Stream *out;
FCGX_Stream *err;
- char **envp;
+ char **envp;
- /* Don't use anything below here */
+ /* Don't use anything below here */
struct Params *paramsPtr;
int ipcFd; /* < 0 means no connection */
int keepConnection; /* don't close ipcFd at end of request */
int appStatus;
int nWriters; /* number of open writers (0..2) */
- int flags;
- int listen_sock;
+ int flags;
+ int listen_sock;
+ int detached;
} FCGX_Request;
\f
*/
DLLAPI void FCGX_FreeStream(FCGX_Stream **stream);
+/* ----------------------------------------------------------------------
+ *
+ * Prevent the lib from accepting any new requests. Signal handler safe.
+ *
+ * ----------------------------------------------------------------------
+ */
+DLLAPI void FCGX_ShutdownPending(void);
+
+
+/*
+ * Attach/Detach an accepted request from its listen socket.
+ * XXX This is not fully implemented at this time (patch welcome).
+ */
+DLLAPI int FCGX_Attach(FCGX_Request * r);
+DLLAPI int FCGX_Detach(FCGX_Request * r);
+
#if defined (__cplusplus) || defined (c_plusplus)
} /* terminate extern "C" { */