summaryrefslogtreecommitdiff
path: root/sapi/embed/php_embed.h
diff options
context:
space:
mode:
authorMark A. Hershberger <mah@debian.(none)>2009-03-25 00:34:21 -0400
committerMark A. Hershberger <mah@debian.(none)>2009-03-25 00:34:21 -0400
commit0e920280a2e04b110827bb766b9f29e3d581c4ee (patch)
tree8f2125f3d00fe3089e3b94adb06f04479ee15f2a /sapi/embed/php_embed.h
downloadphp-0e920280a2e04b110827bb766b9f29e3d581c4ee.tar.gz
Imported Upstream version 5.0.4upstream/5.0.4
Diffstat (limited to 'sapi/embed/php_embed.h')
-rw-r--r--sapi/embed/php_embed.h61
1 files changed, 61 insertions, 0 deletions
diff --git a/sapi/embed/php_embed.h b/sapi/embed/php_embed.h
new file mode 100644
index 000000000..12c9d57ac
--- /dev/null
+++ b/sapi/embed/php_embed.h
@@ -0,0 +1,61 @@
+/*
+ +----------------------------------------------------------------------+
+ | PHP Version 5 |
+ +----------------------------------------------------------------------+
+ | Copyright (c) 1997-2004 The PHP Group |
+ +----------------------------------------------------------------------+
+ | This source file is subject to version 3.0 of the PHP license, |
+ | that is bundled with this package in the file LICENSE, and is |
+ | available through the world-wide-web at the following url: |
+ | http://www.php.net/license/3_0.txt. |
+ | If you did not receive a copy of the PHP license and are unable to |
+ | obtain it through the world-wide-web, please send a note to |
+ | license@php.net so we can mail you a copy immediately. |
+ +----------------------------------------------------------------------+
+ | Author: Edin Kadribasic <edink@php.net> |
+ +----------------------------------------------------------------------+
+*/
+/* $Id: php_embed.h,v 1.5 2004/01/08 17:33:24 sniper Exp $ */
+
+#ifndef _PHP_EMBED_H_
+#define _PHP_EMBED_H_
+
+#include <main/php.h>
+#include <main/SAPI.h>
+#include <main/php_main.h>
+#include <main/php_variables.h>
+#include <main/php_ini.h>
+#include <zend_ini.h>
+
+#ifdef ZTS
+#define PTSRMLS_D void ****ptsrm_ls
+#define PTSRMLS_DC , PTSRMLS_D
+#define PTSRMLS_C &tsrm_ls
+#define PTSRMLS_CC , PTSRMLS_C
+#else
+#define PTSRMLS_D
+#define PTSRMLS_DC
+#define PTSRMLS_C
+#define PTSRMLS_CC
+#endif
+
+#define PHP_EMBED_START_BLOCK(x,y) { \
+ void ***tsrm_ls; \
+ php_embed_init(x, y PTSRMLS_CC); \
+ zend_first_try {
+
+#define PHP_EMBED_END_BLOCK() \
+ } zend_catch { \
+ /* int exit_status = EG(exit_status); */ \
+ } zend_end_try(); \
+ php_embed_shutdown(TSRMLS_C); \
+}
+
+BEGIN_EXTERN_C()
+int php_embed_init(int argc, char **argv PTSRMLS_DC);
+void php_embed_shutdown(TSRMLS_D);
+extern sapi_module_struct php_embed_module;
+END_EXTERN_C()
+
+
+#endif /* _PHP_EMBED_H_ */