From 64b962b241747caf02fce2029c890e3011e71b71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1t=C3=A9=20Kocsis?= Date: Fri, 2 Sep 2022 11:14:10 +0200 Subject: [PATCH] Declare ext/standard constants in stubs - part 4 Closes GH-9465 --- ext/standard/basic_functions.c | 1 + ext/standard/basic_functions.stub.php | 199 +++++++++++++++++++++++++ ext/standard/basic_functions_arginfo.h | 63 +++++++- ext/standard/syslog.c | 55 ------- 4 files changed, 262 insertions(+), 56 deletions(-) diff --git a/ext/standard/basic_functions.c b/ext/standard/basic_functions.c index 2a2fc2e4ae1e1..0b48bd834e631 100755 --- a/ext/standard/basic_functions.c +++ b/ext/standard/basic_functions.c @@ -26,6 +26,7 @@ #include "php_http.h" #include "php_incomplete_class.h" #include "php_getopt.h" +#include "php_ext_syslog.h" #include "ext/standard/info.h" #include "ext/session/php_session.h" #include "zend_exceptions.h" diff --git a/ext/standard/basic_functions.stub.php b/ext/standard/basic_functions.stub.php index 0e0968e3b3c1b..e6473e5932f40 100755 --- a/ext/standard/basic_functions.stub.php +++ b/ext/standard/basic_functions.stub.php @@ -343,6 +343,205 @@ */ const PHP_ROUND_HALF_ODD = UNKNOWN; +/* syslog.c */ + +/* error levels */ + +/** + * system unusable + * @var int + * @cvalue LOG_EMERG + */ +const LOG_EMERG = UNKNOWN; +/** + * immediate action required + * @var int + * @cvalue LOG_ALERT + */ +const LOG_ALERT = UNKNOWN; +/** + * critical conditions + * @var int + * @cvalue LOG_CRIT + */ +const LOG_CRIT = UNKNOWN; +/** + * @var int + * @cvalue LOG_ERR + */ +const LOG_ERR = UNKNOWN; +/** + * @var int + * @cvalue LOG_WARNING + */ +const LOG_WARNING = UNKNOWN; +/** + * @var int + * @cvalue LOG_NOTICE + */ +const LOG_NOTICE = UNKNOWN; +/** + * @var int + * @cvalue LOG_INFO + */ +const LOG_INFO = UNKNOWN; +/** + * @var int + * @cvalue LOG_DEBUG + */ +const LOG_DEBUG = UNKNOWN; +/* facility: type of program logging the message */ +/** + * @var int + * @cvalue LOG_KERN + */ +const LOG_KERN = UNKNOWN; +/** + * generic user level + * @var int + * @cvalue LOG_USER + */ +const LOG_USER = UNKNOWN; +/** + * log to email + * @var int + * @cvalue LOG_MAIL + */ +const LOG_MAIL = UNKNOWN; +/** + * other system daemons + * @var int + * @cvalue LOG_DAEMON + */ +const LOG_DAEMON = UNKNOWN; +/** + * @var int + * @cvalue LOG_AUTH + */ +const LOG_AUTH = UNKNOWN; +/** + * @var int + * @cvalue LOG_SYSLOG + */ +const LOG_SYSLOG = UNKNOWN; +/** + * @var int + * @cvalue LOG_LPR + */ +const LOG_LPR = UNKNOWN; +#ifdef LOG_NEWS +/* No LOG_NEWS on HP-UX */ +/** + * usenet new + * @var int + * @cvalue LOG_NEWS + */ +const LOG_NEWS = UNKNOWN; +#endif +#ifdef LOG_UUCP +/* No LOG_UUCP on HP-UX */ +/** + * @var int + * @cvalue LOG_UUCP + */ +const LOG_UUCP = UNKNOWN; +#endif +#ifdef LOG_CRON +/* apparently some systems don't have this one */ +/** + * @var int + * @cvalue LOG_CRON + */ +const LOG_CRON = UNKNOWN; +#endif +#ifdef LOG_AUTHPRIV +/* AIX doesn't have LOG_AUTHPRIV */ +/** + * @var int + * @cvalue LOG_AUTHPRIV + */ +const LOG_AUTHPRIV = UNKNOWN; +#endif +#ifndef PHP_WIN32 +/** + * @var int + * @cvalue LOG_LOCAL0 + */ +const LOG_LOCAL0 = UNKNOWN; +/** + * @var int + * @cvalue LOG_LOCAL1 + */ +const LOG_LOCAL1 = UNKNOWN; +/** + * @var int + * @cvalue LOG_LOCAL2 + */ +const LOG_LOCAL2 = UNKNOWN; +/** + * @var int + * @cvalue LOG_LOCAL3 + */ +const LOG_LOCAL3 = UNKNOWN; +/** + * @var int + * @cvalue LOG_LOCAL4 + */ +const LOG_LOCAL4 = UNKNOWN; +/** + * @var int + * @cvalue LOG_LOCAL5 + */ +const LOG_LOCAL5 = UNKNOWN; +/** + * @var int + * @cvalue LOG_LOCAL6 + */ +const LOG_LOCAL6 = UNKNOWN; +/** + * @var int + * @cvalue LOG_LOCAL7 + */ +const LOG_LOCAL7 = UNKNOWN; +#endif +/* options */ +/** + * @var int + * @cvalue LOG_PID + */ +const LOG_PID = UNKNOWN; +/** + * @var int + * @cvalue LOG_CONS + */ +const LOG_CONS = UNKNOWN; +/** + * @var int + * @cvalue LOG_ODELAY + */ +const LOG_ODELAY = UNKNOWN; +/** + * @var int + * @cvalue LOG_NDELAY + */ +const LOG_NDELAY = UNKNOWN; +#ifdef LOG_NOWAIT +/** + * @var int + * @cvalue LOG_NOWAIT + */ +const LOG_NOWAIT = UNKNOWN; +#endif +#ifdef LOG_PERROR +/* AIX doesn't have LOG_PERROR */ +/** + * log to stderr + * @var int + * @cvalue LOG_PERROR + */ +const LOG_PERROR = UNKNOWN; +#endif + #[AllowDynamicProperties] final class __PHP_Incomplete_Class { diff --git a/ext/standard/basic_functions_arginfo.h b/ext/standard/basic_functions_arginfo.h index 8793bd4eee24e..50eea65e01c3e 100644 --- a/ext/standard/basic_functions_arginfo.h +++ b/ext/standard/basic_functions_arginfo.h @@ -1,5 +1,5 @@ /* This is a generated file, edit the .stub.php file instead. - * Stub hash: d0941f025c602b46179675026eb198d7425c717a */ + * Stub hash: 18f0424186dc6914160176d70f8ac830f949bfd4 */ 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) @@ -3565,6 +3565,67 @@ static void register_basic_functions_symbols(int module_number) REGISTER_LONG_CONSTANT("PHP_ROUND_HALF_DOWN", PHP_ROUND_HALF_DOWN, CONST_PERSISTENT); REGISTER_LONG_CONSTANT("PHP_ROUND_HALF_EVEN", PHP_ROUND_HALF_EVEN, CONST_PERSISTENT); REGISTER_LONG_CONSTANT("PHP_ROUND_HALF_ODD", PHP_ROUND_HALF_ODD, 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); + REGISTER_LONG_CONSTANT("LOG_ERR", LOG_ERR, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("LOG_WARNING", LOG_WARNING, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("LOG_NOTICE", LOG_NOTICE, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("LOG_INFO", LOG_INFO, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("LOG_DEBUG", LOG_DEBUG, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("LOG_KERN", LOG_KERN, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("LOG_USER", LOG_USER, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("LOG_MAIL", LOG_MAIL, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("LOG_DAEMON", LOG_DAEMON, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("LOG_AUTH", LOG_AUTH, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("LOG_SYSLOG", LOG_SYSLOG, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("LOG_LPR", LOG_LPR, CONST_PERSISTENT); +#if defined(LOG_NEWS) + REGISTER_LONG_CONSTANT("LOG_NEWS", LOG_NEWS, CONST_PERSISTENT); +#endif +#if defined(LOG_UUCP) + REGISTER_LONG_CONSTANT("LOG_UUCP", LOG_UUCP, CONST_PERSISTENT); +#endif +#if defined(LOG_CRON) + REGISTER_LONG_CONSTANT("LOG_CRON", LOG_CRON, CONST_PERSISTENT); +#endif +#if defined(LOG_AUTHPRIV) + REGISTER_LONG_CONSTANT("LOG_AUTHPRIV", LOG_AUTHPRIV, CONST_PERSISTENT); +#endif +#if !defined(PHP_WIN32) + REGISTER_LONG_CONSTANT("LOG_LOCAL0", LOG_LOCAL0, CONST_PERSISTENT); +#endif +#if !defined(PHP_WIN32) + REGISTER_LONG_CONSTANT("LOG_LOCAL1", LOG_LOCAL1, CONST_PERSISTENT); +#endif +#if !defined(PHP_WIN32) + REGISTER_LONG_CONSTANT("LOG_LOCAL2", LOG_LOCAL2, CONST_PERSISTENT); +#endif +#if !defined(PHP_WIN32) + REGISTER_LONG_CONSTANT("LOG_LOCAL3", LOG_LOCAL3, CONST_PERSISTENT); +#endif +#if !defined(PHP_WIN32) + REGISTER_LONG_CONSTANT("LOG_LOCAL4", LOG_LOCAL4, CONST_PERSISTENT); +#endif +#if !defined(PHP_WIN32) + REGISTER_LONG_CONSTANT("LOG_LOCAL5", LOG_LOCAL5, CONST_PERSISTENT); +#endif +#if !defined(PHP_WIN32) + REGISTER_LONG_CONSTANT("LOG_LOCAL6", LOG_LOCAL6, CONST_PERSISTENT); +#endif +#if !defined(PHP_WIN32) + REGISTER_LONG_CONSTANT("LOG_LOCAL7", LOG_LOCAL7, CONST_PERSISTENT); +#endif + REGISTER_LONG_CONSTANT("LOG_PID", LOG_PID, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("LOG_CONS", LOG_CONS, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("LOG_ODELAY", LOG_ODELAY, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("LOG_NDELAY", LOG_NDELAY, CONST_PERSISTENT); +#if defined(LOG_NOWAIT) + REGISTER_LONG_CONSTANT("LOG_NOWAIT", LOG_NOWAIT, CONST_PERSISTENT); +#endif +#if defined(LOG_PERROR) + REGISTER_LONG_CONSTANT("LOG_PERROR", LOG_PERROR, CONST_PERSISTENT); +#endif zend_add_parameter_attribute(zend_hash_str_find_ptr(CG(function_table), "crypt", sizeof("crypt") - 1), 0, ZSTR_KNOWN(ZEND_STR_SENSITIVEPARAMETER), 0); diff --git a/ext/standard/syslog.c b/ext/standard/syslog.c index e0120a5b603b3..f806e74a03b63 100644 --- a/ext/standard/syslog.c +++ b/ext/standard/syslog.c @@ -35,61 +35,6 @@ /* {{{ PHP_MINIT_FUNCTION */ PHP_MINIT_FUNCTION(syslog) { - /* error levels */ - REGISTER_LONG_CONSTANT("LOG_EMERG", LOG_EMERG, CONST_CS | CONST_PERSISTENT); /* system unusable */ - REGISTER_LONG_CONSTANT("LOG_ALERT", LOG_ALERT, CONST_CS | CONST_PERSISTENT); /* immediate action required */ - REGISTER_LONG_CONSTANT("LOG_CRIT", LOG_CRIT, CONST_CS | CONST_PERSISTENT); /* critical conditions */ - REGISTER_LONG_CONSTANT("LOG_ERR", LOG_ERR, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_WARNING", LOG_WARNING, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_NOTICE", LOG_NOTICE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_INFO", LOG_INFO, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_DEBUG", LOG_DEBUG, CONST_CS | CONST_PERSISTENT); - /* facility: type of program logging the message */ - REGISTER_LONG_CONSTANT("LOG_KERN", LOG_KERN, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_USER", LOG_USER, CONST_CS | CONST_PERSISTENT); /* generic user level */ - REGISTER_LONG_CONSTANT("LOG_MAIL", LOG_MAIL, CONST_CS | CONST_PERSISTENT); /* log to email */ - REGISTER_LONG_CONSTANT("LOG_DAEMON", LOG_DAEMON, CONST_CS | CONST_PERSISTENT); /* other system daemons */ - REGISTER_LONG_CONSTANT("LOG_AUTH", LOG_AUTH, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_SYSLOG", LOG_SYSLOG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_LPR", LOG_LPR, CONST_CS | CONST_PERSISTENT); -#ifdef LOG_NEWS - /* No LOG_NEWS on HP-UX */ - REGISTER_LONG_CONSTANT("LOG_NEWS", LOG_NEWS, CONST_CS | CONST_PERSISTENT); /* usenet new */ -#endif -#ifdef LOG_UUCP - /* No LOG_UUCP on HP-UX */ - REGISTER_LONG_CONSTANT("LOG_UUCP", LOG_UUCP, CONST_CS | CONST_PERSISTENT); -#endif -#ifdef LOG_CRON - /* apparently some systems don't have this one */ - REGISTER_LONG_CONSTANT("LOG_CRON", LOG_CRON, CONST_CS | CONST_PERSISTENT); -#endif -#ifdef LOG_AUTHPRIV - /* AIX doesn't have LOG_AUTHPRIV */ - REGISTER_LONG_CONSTANT("LOG_AUTHPRIV", LOG_AUTHPRIV, CONST_CS | CONST_PERSISTENT); -#endif -#ifndef PHP_WIN32 - REGISTER_LONG_CONSTANT("LOG_LOCAL0", LOG_LOCAL0, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_LOCAL1", LOG_LOCAL1, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_LOCAL2", LOG_LOCAL2, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_LOCAL3", LOG_LOCAL3, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_LOCAL4", LOG_LOCAL4, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_LOCAL5", LOG_LOCAL5, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_LOCAL6", LOG_LOCAL6, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_LOCAL7", LOG_LOCAL7, CONST_CS | CONST_PERSISTENT); -#endif - /* options */ - REGISTER_LONG_CONSTANT("LOG_PID", LOG_PID, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_CONS", LOG_CONS, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_ODELAY", LOG_ODELAY, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("LOG_NDELAY", LOG_NDELAY, CONST_CS | CONST_PERSISTENT); -#ifdef LOG_NOWAIT - REGISTER_LONG_CONSTANT("LOG_NOWAIT", LOG_NOWAIT, CONST_CS | CONST_PERSISTENT); -#endif -#ifdef LOG_PERROR - /* AIX doesn't have LOG_PERROR */ - REGISTER_LONG_CONSTANT("LOG_PERROR", LOG_PERROR, CONST_CS | CONST_PERSISTENT); /*log to stderr*/ -#endif BG(syslog_device)=NULL; return SUCCESS;