Declare ext/standard constants in stubs - part 8 (#9615)

This commit is contained in:
Máté Kocsis 2022-09-30 13:51:18 +02:00 committed by GitHub
parent bb79ef775b
commit ed0f1f04b9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 179 additions and 45 deletions

View file

@ -298,9 +298,6 @@ PHP_MINIT_FUNCTION(basic) /* {{{ */
assertion_error_ce = register_class_AssertionError(zend_ce_error);
register_phpinfo_constants(INIT_FUNC_ARGS_PASSTHRU);
register_html_constants(INIT_FUNC_ARGS_PASSTHRU);
BASIC_MINIT_SUBMODULE(var)
BASIC_MINIT_SUBMODULE(file)
BASIC_MINIT_SUBMODULE(pack)

View file

@ -425,6 +425,69 @@ const DNS_ANY = UNKNOWN;
const DNS_ALL = UNKNOWN;
#endif
/* html.c */
/**
* @var int
* @cvalue PHP_HTML_SPECIALCHARS
*/
const HTML_SPECIALCHARS = UNKNOWN;
/**
* @var int
* @cvalue PHP_HTML_ENTITIES
*/
const HTML_ENTITIES = UNKNOWN;
/**
* @var int
* @cvalue ENT_COMPAT
*/
const ENT_COMPAT = UNKNOWN;
/**
* @var int
* @cvalue ENT_QUOTES
*/
const ENT_QUOTES = UNKNOWN;
/**
* @var int
* @cvalue ENT_NOQUOTES
*/
const ENT_NOQUOTES = UNKNOWN;
/**
* @var int
* @cvalue ENT_IGNORE
*/
const ENT_IGNORE = UNKNOWN;
/**
* @var int
* @cvalue ENT_SUBSTITUTE
*/
const ENT_SUBSTITUTE = UNKNOWN;
/**
* @var int
* @cvalue ENT_DISALLOWED
*/
const ENT_DISALLOWED = UNKNOWN;
/**
* @var int
* @cvalue ENT_HTML401
*/
const ENT_HTML401 = UNKNOWN;
/**
* @var int
* @cvalue ENT_XML1
*/
const ENT_XML1 = UNKNOWN;
/**
* @var int
* @cvalue ENT_XHTML
*/
const ENT_XHTML = UNKNOWN;
/**
* @var int
* @cvalue ENT_HTML5
*/
const ENT_HTML5 = UNKNOWN;
/* image.c */
/**
@ -541,6 +604,89 @@ const IMAGETYPE_UNKNOWN = UNKNOWN;
*/
const IMAGETYPE_COUNT = UNKNOWN;
/* info.c */
/**
* @var int
* @cvalue PHP_INFO_GENERAL
*/
const INFO_GENERAL = UNKNOWN;
/**
* @var int
* @cvalue PHP_INFO_CREDITS
*/
const INFO_CREDITS = UNKNOWN;
/**
* @var int
* @cvalue PHP_INFO_CONFIGURATION
*/
const INFO_CONFIGURATION = UNKNOWN;
/**
* @var int
* @cvalue PHP_INFO_MODULES
*/
const INFO_MODULES = UNKNOWN;
/**
* @var int
* @cvalue PHP_INFO_ENVIRONMENT
*/
const INFO_ENVIRONMENT = UNKNOWN;
/**
* @var int
* @cvalue PHP_INFO_VARIABLES
*/
const INFO_VARIABLES = UNKNOWN;
/**
* @var int
* @cvalue PHP_INFO_LICENSE
*/
const INFO_LICENSE = UNKNOWN;
/**
* @var int
* @cvalue PHP_INFO_ALL
*/
const INFO_ALL = UNKNOWN;
/**
* @var int
* @cvalue PHP_CREDITS_GROUP
*/
const CREDITS_GROUP = UNKNOWN;
/**
* @var int
* @cvalue PHP_CREDITS_GENERAL
*/
const CREDITS_GENERAL = UNKNOWN;
/**
* @var int
* @cvalue PHP_CREDITS_SAPI
*/
const CREDITS_SAPI = UNKNOWN;
/**
* @var int
* @cvalue PHP_CREDITS_MODULES
*/
const CREDITS_MODULES = UNKNOWN;
/**
* @var int
* @cvalue PHP_CREDITS_DOCS
*/
const CREDITS_DOCS = UNKNOWN;
/**
* @var int
* @cvalue PHP_CREDITS_FULLPAGE
*/
const CREDITS_FULLPAGE = UNKNOWN;
/**
* @var int
* @cvalue PHP_CREDITS_QA
*/
const CREDITS_QA = UNKNOWN;
/**
* @var int
* @cvalue PHP_CREDITS_ALL
*/
const CREDITS_ALL = UNKNOWN;
/* syslog.c */
/* error levels */

View file

@ -1,5 +1,5 @@
/* This is a generated file, edit the .stub.php file instead.
* Stub hash: e46c8ef36dc0f29d877ae6e4096135414d0a4412 */
* Stub hash: 84da2d4d107d431887910833ac7a2f5dfced4d6f */
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_set_time_limit, 0, 1, _IS_BOOL, 0)
ZEND_ARG_TYPE_INFO(0, seconds, IS_LONG, 0)
@ -3610,6 +3610,18 @@ static void register_basic_functions_symbols(int module_number)
#if (defined(PHP_WIN32) || (defined(HAVE_DNS_SEARCH_FUNC) && defined(HAVE_FULL_DNS_FUNCS)))
REGISTER_LONG_CONSTANT("DNS_ALL", PHP_DNS_ALL, CONST_PERSISTENT);
#endif
REGISTER_LONG_CONSTANT("HTML_SPECIALCHARS", PHP_HTML_SPECIALCHARS, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("HTML_ENTITIES", PHP_HTML_ENTITIES, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("ENT_COMPAT", ENT_COMPAT, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("ENT_QUOTES", ENT_QUOTES, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("ENT_NOQUOTES", ENT_NOQUOTES, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("ENT_IGNORE", ENT_IGNORE, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("ENT_SUBSTITUTE", ENT_SUBSTITUTE, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("ENT_DISALLOWED", ENT_DISALLOWED, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("ENT_HTML401", ENT_HTML401, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("ENT_XML1", ENT_XML1, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("ENT_XHTML", ENT_XHTML, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("ENT_HTML5", ENT_HTML5, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("IMAGETYPE_GIF", IMAGE_FILETYPE_GIF, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("IMAGETYPE_JPEG", IMAGE_FILETYPE_JPEG, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("IMAGETYPE_PNG", IMAGE_FILETYPE_PNG, CONST_PERSISTENT);
@ -3634,6 +3646,22 @@ static void register_basic_functions_symbols(int module_number)
REGISTER_LONG_CONSTANT("IMAGETYPE_AVIF", IMAGE_FILETYPE_AVIF, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("IMAGETYPE_UNKNOWN", IMAGE_FILETYPE_UNKNOWN, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("IMAGETYPE_COUNT", IMAGE_FILETYPE_COUNT, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("INFO_GENERAL", PHP_INFO_GENERAL, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("INFO_CREDITS", PHP_INFO_CREDITS, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("INFO_CONFIGURATION", PHP_INFO_CONFIGURATION, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("INFO_MODULES", PHP_INFO_MODULES, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("INFO_ENVIRONMENT", PHP_INFO_ENVIRONMENT, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("INFO_VARIABLES", PHP_INFO_VARIABLES, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("INFO_LICENSE", PHP_INFO_LICENSE, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("INFO_ALL", PHP_INFO_ALL, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("CREDITS_GROUP", PHP_CREDITS_GROUP, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("CREDITS_GENERAL", PHP_CREDITS_GENERAL, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("CREDITS_SAPI", PHP_CREDITS_SAPI, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("CREDITS_MODULES", PHP_CREDITS_MODULES, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("CREDITS_DOCS", PHP_CREDITS_DOCS, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("CREDITS_FULLPAGE", PHP_CREDITS_FULLPAGE, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("CREDITS_QA", PHP_CREDITS_QA, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("CREDITS_ALL", PHP_CREDITS_ALL, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("LOG_EMERG", LOG_EMERG, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("LOG_ALERT", LOG_ALERT, CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("LOG_CRIT", LOG_CRIT, CONST_PERSISTENT);

View file

@ -1335,24 +1335,9 @@ static void php_html_entities(INTERNAL_FUNCTION_PARAMETERS, int all)
}
/* }}} */
#define HTML_SPECIALCHARS 0
#define HTML_ENTITIES 1
/* {{{ register_html_constants */
void register_html_constants(INIT_FUNC_ARGS)
{
REGISTER_LONG_CONSTANT("HTML_SPECIALCHARS", HTML_SPECIALCHARS, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("HTML_ENTITIES", HTML_ENTITIES, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("ENT_COMPAT", ENT_COMPAT, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("ENT_QUOTES", ENT_QUOTES, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("ENT_NOQUOTES", ENT_NOQUOTES, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("ENT_IGNORE", ENT_IGNORE, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("ENT_SUBSTITUTE", ENT_SUBSTITUTE, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("ENT_DISALLOWED", ENT_DISALLOWED, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("ENT_HTML401", ENT_HTML401, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("ENT_XML1", ENT_XML1, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("ENT_XHTML", ENT_XHTML, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("ENT_HTML5", ENT_HTML5, CONST_PERSISTENT|CONST_CS);
}
/* }}} */
@ -1467,7 +1452,7 @@ static inline void write_s3row_data(
/* {{{ Returns the internal translation table used by htmlspecialchars and htmlentities */
PHP_FUNCTION(get_html_translation_table)
{
zend_long all = HTML_SPECIALCHARS,
zend_long all = PHP_HTML_SPECIALCHARS,
flags = ENT_QUOTES|ENT_SUBSTITUTE;
int doctype;
entity_table_opt entity_table;
@ -1498,7 +1483,7 @@ PHP_FUNCTION(get_html_translation_table)
to_uni_table = enc_to_uni_index[charset];
}
if (all) { /* HTML_ENTITIES (actually, any non-zero value for 1st param) */
if (all) { /* PHP_HTML_ENTITIES (actually, any non-zero value for 1st param) */
const entity_stage1_row *ms_table = entity_table.ms_table;
if (CHARSET_UNICODE_COMPAT(charset)) {

View file

@ -30,6 +30,8 @@
/* reserve bit 6 */
#define ENT_HTML_SUBSTITUTE_DISALLOWED_CHARS 128
#define PHP_HTML_SPECIALCHARS 0
#define PHP_HTML_ENTITIES 1
#define ENT_COMPAT ENT_HTML_QUOTE_DOUBLE
#define ENT_QUOTES (ENT_HTML_QUOTE_DOUBLE | ENT_HTML_QUOTE_SINGLE)
@ -42,8 +44,6 @@
#define ENT_HTML5 (16|32)
#define ENT_DISALLOWED 128
void register_html_constants(INIT_FUNC_ARGS);
PHPAPI zend_string *php_escape_html_entities(const unsigned char *old, size_t oldlen, int all, int flags, const char *hint_charset);
PHPAPI zend_string *php_escape_html_entities_ex(const unsigned char *old, size_t oldlen, int all, int flags, const char *hint_charset, bool double_encode, bool quiet);
PHPAPI zend_string *php_unescape_html_entities(zend_string *str, int all, int flags, const char *hint_charset);

View file

@ -1243,28 +1243,6 @@ PHPAPI ZEND_COLD void php_info_print_table_row_ex(int num_cols, const char *valu
}
/* }}} */
/* {{{ register_phpinfo_constants */
void register_phpinfo_constants(INIT_FUNC_ARGS)
{
REGISTER_LONG_CONSTANT("INFO_GENERAL", PHP_INFO_GENERAL, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("INFO_CREDITS", PHP_INFO_CREDITS, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("INFO_CONFIGURATION", PHP_INFO_CONFIGURATION, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("INFO_MODULES", PHP_INFO_MODULES, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("INFO_ENVIRONMENT", PHP_INFO_ENVIRONMENT, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("INFO_VARIABLES", PHP_INFO_VARIABLES, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("INFO_LICENSE", PHP_INFO_LICENSE, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("INFO_ALL", PHP_INFO_ALL, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("CREDITS_GROUP", PHP_CREDITS_GROUP, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("CREDITS_GENERAL", PHP_CREDITS_GENERAL, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("CREDITS_SAPI", PHP_CREDITS_SAPI, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("CREDITS_MODULES", PHP_CREDITS_MODULES, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("CREDITS_DOCS", PHP_CREDITS_DOCS, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("CREDITS_FULLPAGE", PHP_CREDITS_FULLPAGE, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("CREDITS_QA", PHP_CREDITS_QA, CONST_PERSISTENT|CONST_CS);
REGISTER_LONG_CONSTANT("CREDITS_ALL", PHP_CREDITS_ALL, CONST_PERSISTENT|CONST_CS);
}
/* }}} */
/* {{{ Output a page of useful information about PHP and the current request */
PHP_FUNCTION(phpinfo)
{