diff options
| author | Hartmut Holzgraefe <hholzgra@php.net> | 2003-06-29 16:07:18 +0000 |
|---|---|---|
| committer | Hartmut Holzgraefe <hholzgra@php.net> | 2003-06-29 16:07:18 +0000 |
| commit | f355c4c5bbd0d02b838a056c8e081ee6fcd1e0d0 (patch) | |
| tree | cb7e62d66cdea0d59b6e8be2a0223c1d7c219a52 /ext/skeleton/skeleton.c | |
| parent | 913cec65517f11ebd972f920d1d320b853a175dd (diff) | |
| download | php-git-f355c4c5bbd0d02b838a056c8e081ee6fcd1e0d0.tar.gz | |
ok, re-adding this mostly un-maintained awk/sed/sh nightmare for now ...
Diffstat (limited to 'ext/skeleton/skeleton.c')
| -rw-r--r-- | ext/skeleton/skeleton.c | 167 |
1 files changed, 167 insertions, 0 deletions
diff --git a/ext/skeleton/skeleton.c b/ext/skeleton/skeleton.c new file mode 100644 index 0000000000..021b76e789 --- /dev/null +++ b/ext/skeleton/skeleton.c @@ -0,0 +1,167 @@ +/* __header_here__ */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "php.h" +#include "php_ini.h" +#include "ext/standard/info.h" +#include "php_extname.h" + +/* If you declare any globals in php_extname.h uncomment this: +ZEND_DECLARE_MODULE_GLOBALS(extname) +*/ + +/* True global resources - no need for thread safety here */ +static int le_extname; + +/* {{{ extname_functions[] + * + * Every user visible function must have an entry in extname_functions[]. + */ +function_entry extname_functions[] = { + PHP_FE(confirm_extname_compiled, NULL) /* For testing, remove later. */ + /* __function_entries_here__ */ + {NULL, NULL, NULL} /* Must be the last line in extname_functions[] */ +}; +/* }}} */ + +/* {{{ extname_module_entry + */ +zend_module_entry extname_module_entry = { +#if ZEND_MODULE_API_NO >= 20010901 + STANDARD_MODULE_HEADER, +#endif + "extname", + extname_functions, + PHP_MINIT(extname), + PHP_MSHUTDOWN(extname), + PHP_RINIT(extname), /* Replace with NULL if there's nothing to do at request start */ + PHP_RSHUTDOWN(extname), /* Replace with NULL if there's nothing to do at request end */ + PHP_MINFO(extname), +#if ZEND_MODULE_API_NO >= 20010901 + "0.1", /* Replace with version number for your extension */ +#endif + STANDARD_MODULE_PROPERTIES +}; +/* }}} */ + +#ifdef COMPILE_DL_EXTNAME +ZEND_GET_MODULE(extname) +#endif + +/* {{{ PHP_INI + */ +/* Remove comments and fill if you need to have entries in php.ini +PHP_INI_BEGIN() + STD_PHP_INI_ENTRY("extname.global_value", "42", PHP_INI_ALL, OnUpdateLong, global_value, zend_extname_globals, extname_globals) + STD_PHP_INI_ENTRY("extname.global_string", "foobar", PHP_INI_ALL, OnUpdateString, global_string, zend_extname_globals, extname_globals) +PHP_INI_END() +*/ +/* }}} */ + +/* {{{ php_extname_init_globals + */ +/* Uncomment this function if you have INI entries +static void php_extname_init_globals(zend_extname_globals *extname_globals) +{ + extname_globals->global_value = 0; + extname_globals->global_string = NULL; +} +*/ +/* }}} */ + +/* {{{ PHP_MINIT_FUNCTION + */ +PHP_MINIT_FUNCTION(extname) +{ + /* If you have INI entries, uncomment these lines + ZEND_INIT_MODULE_GLOBALS(extname, php_extname_init_globals, NULL); + REGISTER_INI_ENTRIES(); + */ + return SUCCESS; +} +/* }}} */ + +/* {{{ PHP_MSHUTDOWN_FUNCTION + */ +PHP_MSHUTDOWN_FUNCTION(extname) +{ + /* uncomment this line if you have INI entries + UNREGISTER_INI_ENTRIES(); + */ + return SUCCESS; +} +/* }}} */ + +/* Remove if there's nothing to do at request start */ +/* {{{ PHP_RINIT_FUNCTION + */ +PHP_RINIT_FUNCTION(extname) +{ + return SUCCESS; +} +/* }}} */ + +/* Remove if there's nothing to do at request end */ +/* {{{ PHP_RSHUTDOWN_FUNCTION + */ +PHP_RSHUTDOWN_FUNCTION(extname) +{ + return SUCCESS; +} +/* }}} */ + +/* {{{ PHP_MINFO_FUNCTION + */ +PHP_MINFO_FUNCTION(extname) +{ + php_info_print_table_start(); + php_info_print_table_header(2, "extname support", "enabled"); + php_info_print_table_end(); + + /* Remove comments if you have entries in php.ini + DISPLAY_INI_ENTRIES(); + */ +} +/* }}} */ + + +/* Remove the following function when you have succesfully modified config.m4 + so that your module can be compiled into PHP, it exists only for testing + purposes. */ + +/* Every user-visible function in PHP should document itself in the source */ +/* {{{ proto string confirm_extname_compiled(string arg) + Return a string to confirm that the module is compiled in */ +PHP_FUNCTION(confirm_extname_compiled) +{ + char *arg = NULL; + int arg_len, len; + char string[256]; + + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &arg, &arg_len) == FAILURE) { + return; + } + + len = sprintf(string, "Congratulations! You have successfully modified ext/%.78s/config.m4. Module %.78s is now compiled into PHP.", "extname", arg); + RETURN_STRINGL(string, len, 1); +} +/* }}} */ +/* The previous line is meant for vim and emacs, so it can correctly fold and + unfold functions in source code. See the corresponding marks just before + function definition, where the functions purpose is also documented. Please + follow this convention for the convenience of others editing your code. +*/ + +/* __function_stubs_here__ */ + +/* + * Local variables: + * tab-width: 4 + * c-basic-offset: 4 + * End: + * vim600: noet sw=4 ts=4 fdm=marker + * vim<600: noet sw=4 ts=4 + */ |
