From 464bc4f14333978d02c491aea1294e45a1dca5e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1t=C3=A9=20Kocsis?= Date: Mon, 25 Jul 2022 19:15:06 +0200 Subject: [PATCH] Declare ext/xsl constants in stubs --- ext/xsl/php_xsl.c | 20 +----------- ext/xsl/php_xsl.stub.php | 67 +++++++++++++++++++++++++++++++++++++++ ext/xsl/php_xsl_arginfo.h | 24 +++++++++++++- 3 files changed, 91 insertions(+), 20 deletions(-) diff --git a/ext/xsl/php_xsl.c b/ext/xsl/php_xsl.c index 1e98a6ce88bbe..0c9029c9601df 100644 --- a/ext/xsl/php_xsl.c +++ b/ext/xsl/php_xsl.c @@ -131,25 +131,7 @@ PHP_MINIT_FUNCTION(xsl) xsl_ext_function_object_php); xsltSetGenericErrorFunc(NULL, php_libxml_error_handler); - REGISTER_LONG_CONSTANT("XSL_CLONE_AUTO", 0, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("XSL_CLONE_NEVER", -1, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("XSL_CLONE_ALWAYS", 1, CONST_CS | CONST_PERSISTENT); - - REGISTER_LONG_CONSTANT("XSL_SECPREF_NONE", XSL_SECPREF_NONE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("XSL_SECPREF_READ_FILE", XSL_SECPREF_READ_FILE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("XSL_SECPREF_WRITE_FILE", XSL_SECPREF_WRITE_FILE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("XSL_SECPREF_CREATE_DIRECTORY", XSL_SECPREF_CREATE_DIRECTORY, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("XSL_SECPREF_READ_NETWORK", XSL_SECPREF_READ_NETWORK, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("XSL_SECPREF_WRITE_NETWORK", XSL_SECPREF_WRITE_NETWORK, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("XSL_SECPREF_DEFAULT", XSL_SECPREF_DEFAULT, CONST_CS | CONST_PERSISTENT); - - REGISTER_LONG_CONSTANT("LIBXSLT_VERSION", LIBXSLT_VERSION, CONST_CS | CONST_PERSISTENT); - REGISTER_STRING_CONSTANT("LIBXSLT_DOTTED_VERSION", LIBXSLT_DOTTED_VERSION, CONST_CS | CONST_PERSISTENT); - -#ifdef HAVE_XSL_EXSLT - REGISTER_LONG_CONSTANT("LIBEXSLT_VERSION", LIBEXSLT_VERSION, CONST_CS | CONST_PERSISTENT); - REGISTER_STRING_CONSTANT("LIBEXSLT_DOTTED_VERSION", LIBEXSLT_DOTTED_VERSION, CONST_CS | CONST_PERSISTENT); -#endif + register_php_xsl_symbols(module_number); return SUCCESS; } diff --git a/ext/xsl/php_xsl.stub.php b/ext/xsl/php_xsl.stub.php index de350acfce80a..140c498523b42 100644 --- a/ext/xsl/php_xsl.stub.php +++ b/ext/xsl/php_xsl.stub.php @@ -2,6 +2,73 @@ /** @generate-class-entries */ +/** @var int */ +const XSL_CLONE_AUTO = 0; +/** @var int */ +const XSL_CLONE_NEVER = -1; +/** @var int */ +const XSL_CLONE_ALWAYS = 1; + +/** + * @var int + * @cvalue XSL_SECPREF_NONE + */ +const XSL_SECPREF_NONE = UNKNOWN; +/** + * @var int + * @cvalue XSL_SECPREF_READ_FILE + */ +const XSL_SECPREF_READ_FILE = UNKNOWN; +/** + * @var int + * @cvalue XSL_SECPREF_WRITE_FILE + */ +const XSL_SECPREF_WRITE_FILE = UNKNOWN; +/** + * @var int + * @cvalue XSL_SECPREF_CREATE_DIRECTORY + */ +const XSL_SECPREF_CREATE_DIRECTORY = UNKNOWN; +/** + * @var int + * @cvalue XSL_SECPREF_READ_NETWORK + */ +const XSL_SECPREF_READ_NETWORK = UNKNOWN; +/** + * @var int + * @cvalue XSL_SECPREF_WRITE_NETWORK + */ +const XSL_SECPREF_WRITE_NETWORK = UNKNOWN; +/** + * @var int + * @cvalue XSL_SECPREF_DEFAULT + */ +const XSL_SECPREF_DEFAULT = UNKNOWN; + +/** + * @var int + * @cvalue LIBXSLT_VERSION + */ +const LIBXSLT_VERSION = UNKNOWN; +/** + * @var string + * @cvalue LIBXSLT_DOTTED_VERSION + */ +const LIBXSLT_DOTTED_VERSION = UNKNOWN; + +#ifdef HAVE_XSL_EXSLT +/** + * @var int + * @cvalue LIBEXSLT_VERSION + */ +const LIBEXSLT_VERSION = UNKNOWN; +/** + * @var string + * @cvalue LIBEXSLT_DOTTED_VERSION + */ +const LIBEXSLT_DOTTED_VERSION = UNKNOWN; +#endif + class XSLTProcessor { /** diff --git a/ext/xsl/php_xsl_arginfo.h b/ext/xsl/php_xsl_arginfo.h index 11c96cdf062b6..04b723fbf5b68 100644 --- a/ext/xsl/php_xsl_arginfo.h +++ b/ext/xsl/php_xsl_arginfo.h @@ -1,5 +1,5 @@ /* This is a generated file, edit the .stub.php file instead. - * Stub hash: 7c920913c15c9cd663f19f7ec5ad81648d6eddbc */ + * Stub hash: a0615bef7b2211570d9da95a31857832a06360dd */ ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_XSLTProcessor_importStylesheet, 0, 1, _IS_BOOL, 0) ZEND_ARG_TYPE_INFO(0, stylesheet, IS_OBJECT, 0) @@ -84,6 +84,28 @@ static const zend_function_entry class_XSLTProcessor_methods[] = { ZEND_FE_END }; +static void register_php_xsl_symbols(int module_number) +{ + REGISTER_LONG_CONSTANT("XSL_CLONE_AUTO", 0, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("XSL_CLONE_NEVER", -1, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("XSL_CLONE_ALWAYS", 1, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("XSL_SECPREF_NONE", XSL_SECPREF_NONE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("XSL_SECPREF_READ_FILE", XSL_SECPREF_READ_FILE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("XSL_SECPREF_WRITE_FILE", XSL_SECPREF_WRITE_FILE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("XSL_SECPREF_CREATE_DIRECTORY", XSL_SECPREF_CREATE_DIRECTORY, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("XSL_SECPREF_READ_NETWORK", XSL_SECPREF_READ_NETWORK, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("XSL_SECPREF_WRITE_NETWORK", XSL_SECPREF_WRITE_NETWORK, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("XSL_SECPREF_DEFAULT", XSL_SECPREF_DEFAULT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("LIBXSLT_VERSION", LIBXSLT_VERSION, CONST_CS | CONST_PERSISTENT); + REGISTER_STRING_CONSTANT("LIBXSLT_DOTTED_VERSION", LIBXSLT_DOTTED_VERSION, CONST_CS | CONST_PERSISTENT); +#if defined(HAVE_XSL_EXSLT) + REGISTER_LONG_CONSTANT("LIBEXSLT_VERSION", LIBEXSLT_VERSION, CONST_CS | CONST_PERSISTENT); +#endif +#if defined(HAVE_XSL_EXSLT) + REGISTER_STRING_CONSTANT("LIBEXSLT_DOTTED_VERSION", LIBEXSLT_DOTTED_VERSION, CONST_CS | CONST_PERSISTENT); +#endif +} + static zend_class_entry *register_class_XSLTProcessor(void) { zend_class_entry ce, *class_entry;