Annotation of embedaddon/php/sapi/embed/php_embed.h, revision 1.1.1.1
1.1 misho 1: /*
2: +----------------------------------------------------------------------+
3: | PHP Version 5 |
4: +----------------------------------------------------------------------+
5: | Copyright (c) 1997-2012 The PHP Group |
6: +----------------------------------------------------------------------+
7: | This source file is subject to version 3.01 of the PHP license, |
8: | that is bundled with this package in the file LICENSE, and is |
9: | available through the world-wide-web at the following url: |
10: | http://www.php.net/license/3_01.txt |
11: | If you did not receive a copy of the PHP license and are unable to |
12: | obtain it through the world-wide-web, please send a note to |
13: | license@php.net so we can mail you a copy immediately. |
14: +----------------------------------------------------------------------+
15: | Author: Edin Kadribasic <edink@php.net> |
16: +----------------------------------------------------------------------+
17: */
18: /* $Id: php_embed.h 321634 2012-01-01 13:15:04Z felipe $ */
19:
20: #ifndef _PHP_EMBED_H_
21: #define _PHP_EMBED_H_
22:
23: #include <main/php.h>
24: #include <main/SAPI.h>
25: #include <main/php_main.h>
26: #include <main/php_variables.h>
27: #include <main/php_ini.h>
28: #include <zend_ini.h>
29:
30: #ifdef ZTS
31: #define PTSRMLS_D void ****ptsrm_ls
32: #define PTSRMLS_DC , PTSRMLS_D
33: #define PTSRMLS_C &tsrm_ls
34: #define PTSRMLS_CC , PTSRMLS_C
35:
36: #define PHP_EMBED_START_BLOCK(x,y) { \
37: void ***tsrm_ls; \
38: php_embed_init(x, y PTSRMLS_CC); \
39: zend_first_try {
40:
41: #else
42: #define PTSRMLS_D
43: #define PTSRMLS_DC
44: #define PTSRMLS_C
45: #define PTSRMLS_CC
46:
47: #define PHP_EMBED_START_BLOCK(x,y) { \
48: php_embed_init(x, y); \
49: zend_first_try {
50:
51: #endif
52:
53: #define PHP_EMBED_END_BLOCK() \
54: } zend_catch { \
55: /* int exit_status = EG(exit_status); */ \
56: } zend_end_try(); \
57: php_embed_shutdown(TSRMLS_C); \
58: }
59:
60: #ifndef PHP_WIN32
61: #define EMBED_SAPI_API SAPI_API
62: #else
63: #define EMBED_SAPI_API
64: #endif
65:
66: BEGIN_EXTERN_C()
67: EMBED_SAPI_API int php_embed_init(int argc, char **argv PTSRMLS_DC);
68: EMBED_SAPI_API void php_embed_shutdown(TSRMLS_D);
69: extern EMBED_SAPI_API sapi_module_struct php_embed_module;
70: END_EXTERN_C()
71:
72:
73: #endif /* _PHP_EMBED_H_ */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>