Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 61 lines (48 sloc) 2.419 kb
573b460 @andigutmans Zend Library
andigutmans authored
1 /*
2 +----------------------------------------------------------------------+
3 | Zend Engine |
4 +----------------------------------------------------------------------+
5 | Copyright (c) 1998, 1999 Andi Gutmans, Zeev Suraski |
6 +----------------------------------------------------------------------+
b5b1117 @zsuraski License update
zsuraski authored
7 | This source file is subject to version 0.90 of the Zend license, |
8 | that is bundled with this package in the file LICENSE, and is |
9 | available at through the world-wide-web at |
10 | http://www.zend.com/license/0_90.txt. |
11 | If you did not receive a copy of the Zend license and are unable to |
12 | obtain it through the world-wide-web, please send a note to |
13 | license@zend.com so we can mail you a copy immediately. |
573b460 @andigutmans Zend Library
andigutmans authored
14 +----------------------------------------------------------------------+
15 | Authors: Andi Gutmans <andi@zend.com> |
16 | Zeev Suraski <zeev@zend.com> |
17 +----------------------------------------------------------------------+
18 */
19
b5b1117 @zsuraski License update
zsuraski authored
20
573b460 @andigutmans Zend Library
andigutmans authored
21 #ifndef _MODULES_H
22 #define _MODULES_H
23
9d8e0db @zsuraski * Add arguments to shutdown functions
zsuraski authored
24 #define INIT_FUNC_ARGS int type, int module_number
5d4579a added INIT_FUNC_ARGS_PASSTHRU and SHUTDOWN_FUNC_ARGS_PASSTHRU
Stig S. Bakken authored
25 #define INIT_FUNC_ARGS_PASSTHRU type, module_number
9d8e0db @zsuraski * Add arguments to shutdown functions
zsuraski authored
26 #define SHUTDOWN_FUNC_ARGS int type, int module_number
5d4579a added INIT_FUNC_ARGS_PASSTHRU and SHUTDOWN_FUNC_ARGS_PASSTHRU
Stig S. Bakken authored
27 #define SHUTDOWN_FUNC_ARGS_PASSTHRU type, module_number
14a8e9b @zsuraski Change argument name
zsuraski authored
28 #define ZEND_MODULE_INFO_FUNC_ARGS zend_module_entry *zend_module
573b460 @andigutmans Zend Library
andigutmans authored
29
30 #define STANDARD_MODULE_PROPERTIES 0, 0, 0, NULL, 0
31
32
33 #define MODULE_PERSISTENT 1
34 #define MODULE_TEMPORARY 2
35
bfbe861 @zsuraski Almost forgot to commit those
zsuraski authored
36 typedef struct _zend_module_entry zend_module_entry;
37
38 struct _zend_module_entry {
573b460 @andigutmans Zend Library
andigutmans authored
39 char *name;
342c6e0 @zsuraski Whatnot:
zsuraski authored
40 zend_function_entry *functions;
573b460 @andigutmans Zend Library
andigutmans authored
41 int (*module_startup_func)(INIT_FUNC_ARGS);
9d8e0db @zsuraski * Add arguments to shutdown functions
zsuraski authored
42 int (*module_shutdown_func)(SHUTDOWN_FUNC_ARGS);
573b460 @andigutmans Zend Library
andigutmans authored
43 int (*request_startup_func)(INIT_FUNC_ARGS);
9d8e0db @zsuraski * Add arguments to shutdown functions
zsuraski authored
44 int (*request_shutdown_func)(SHUTDOWN_FUNC_ARGS);
bfbe861 @zsuraski Almost forgot to commit those
zsuraski authored
45 void (*info_func)(ZEND_MODULE_INFO_FUNC_ARGS);
46 int request_started, module_started;
573b460 @andigutmans Zend Library
andigutmans authored
47 unsigned char type;
48 void *handle;
49 int module_number;
bfbe861 @zsuraski Almost forgot to commit those
zsuraski authored
50 };
573b460 @andigutmans Zend Library
andigutmans authored
51
52
53 extern HashTable module_registry;
54
55 extern void module_destructor(zend_module_entry *module);
56 extern int module_registry_cleanup(zend_module_entry *module);
57 extern int module_registry_request_startup(zend_module_entry *module);
58
81d901b @zsuraski Step 1 in nuking the garbage collector:
zsuraski authored
59 #define ZEND_MODULE_DTOR (int (*)(void *)) module_destructor
573b460 @andigutmans Zend Library
andigutmans authored
60 #endif
Something went wrong with that request. Please try again.