com php-src: Pass error severity to SAPI modules and raise corresponding error level in Apache: ext/standard/basic_functions.c mai n/SAPI.h
main/main.c sapi/apache2handler/sapi_apach e2.c sapi/cgi/cgi_main.c sapi/cli/php_cli.c s api/cli/php_cli_server.c sapi/embed/php_embed.c s
api/fpm/fpm/fpm_main.c sapi/litespeed/lsapi_main.c sapi/phpdbg/phpdbg.c
| From: | Anatol Belski | Date: | Mon, 11 Jul 2016 07:34:48 +0000 |
| Subject: | com php-src: Pass error severity to SAPI modules and raise corresponding error level in Apache: ext/standard/basic_functions.c mai n/SAPI.h main/main.c sapi/apache2handler/sapi_apach e2.c sapi/cgi/cgi_main.c sapi/cli/php_cli.c s api/cli/php_cli_server.c sapi/embed/php_embed.c s api/fpm/fpm/fpm_main.c sapi/litespeed/lsapi_main.c sapi/phpdbg/phpdbg.c |
||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-92906@lists.php.net to get a copy of this message | ||
Commit: 2809a676b55cebd4c6f8a8895ffe286db0704e87
Author: Martin Vobruba <vobruba.martin@gmail.com> Mon, 4 Jul 2016 10:46:44 +0200
Committer: Anatol Belski <ab@php.net> Mon, 11 Jul 2016 09:34:48 +0200
Parents: 2e3903b2d62976087b3ce74275372052a9922a36
Branches: master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=2809a676b55cebd4c6f8a8895ffe286db0704e87
Log:
Pass error severity to SAPI modules and raise corresponding error level in Apache
Changed paths:
M ext/standard/basic_functions.c
M main/SAPI.h
M main/main.c
M sapi/apache2handler/sapi_apache2.c
M sapi/cgi/cgi_main.c
M sapi/cli/php_cli.c
M sapi/cli/php_cli_server.c
M sapi/embed/php_embed.c
M sapi/fpm/fpm/fpm_main.c
M sapi/litespeed/lsapi_main.c
M sapi/phpdbg/phpdbg.c
Diff:
diff --git a/ext/standard/basic_functions.c b/ext/standard/basic_functions.c
index 7fa1ad4..c7411b2 100644
--- a/ext/standard/basic_functions.c
+++ b/ext/standard/basic_functions.c
@@ -4740,7 +4740,7 @@ PHPAPI int _php_error_log_ex(int opt_err, char *message, size_t message_len,
cha
case 4: /* send to SAPI */
if (sapi_module.log_message) {
- sapi_module.log_message(message);
+ sapi_module.log_message(message, -1);
} else {
return FAILURE;
}
diff --git a/main/SAPI.h b/main/SAPI.h
index e6c8e8c..e02bab9 100644
--- a/main/SAPI.h
+++ b/main/SAPI.h
@@ -241,7 +241,7 @@ struct _sapi_module_struct {
char *(*read_cookies)(void);
void (*register_server_variables)(zval *track_vars_array);
- void (*log_message)(char *message);
+ void (*log_message)(char *message, int syslog_type_int);
double (*get_request_time)(void);
void (*terminate_process)(void);
diff --git a/main/main.c b/main/main.c
index 848f24f..0a11271 100644
--- a/main/main.c
+++ b/main/main.c
@@ -698,7 +698,7 @@ PHPAPI ZEND_COLD void php_log_err_with_severity(char *log_message, int syslog_ty
/* Otherwise fall back to the default logging location, if we have one */
if (sapi_module.log_message) {
- sapi_module.log_message(log_message);
+ sapi_module.log_message(log_message, syslog_type_int);
}
PG(in_error_log) = 0;
}
diff --git a/sapi/apache2handler/sapi_apache2.c b/sapi/apache2handler/sapi_apache2.c
index 6f6de42..f61841d 100644
--- a/sapi/apache2handler/sapi_apache2.c
+++ b/sapi/apache2handler/sapi_apache2.c
@@ -314,16 +314,44 @@ php_apache_sapi_flush(void *server_context)
}
}
-static void php_apache_sapi_log_message(char *msg)
+static void php_apache_sapi_log_message(char *msg, int syslog_type_int)
{
php_struct *ctx;
+ int aplog_type = APLOG_ERR;
ctx = SG(server_context);
+ switch (syslog_type_int) {
+ case LOG_EMERG:
+ aplog_type = APLOG_EMERG;
+ break;
+ case LOG_ALERT:
+ aplog_type = APLOG_ALERT;
+ break;
+ case LOG_CRIT:
+ aplog_type = APLOG_CRIT;
+ break;
+ case LOG_ERR:
+ aplog_type = APLOG_ERR;
+ break;
+ case LOG_WARNING:
+ aplog_type = APLOG_WARNING;
+ break;
+ case LOG_NOTICE:
+ aplog_type = APLOG_NOTICE;
+ break;
+ case LOG_INFO:
+ aplog_type = APLOG_INFO;
+ break;
+ case LOG_DEBUG:
+ aplog_type = APLOG_DEBUG;
+ break;
+ }
+
if (ctx == NULL) { /* we haven't initialized our ctx yet, oh well */
ap_log_error(APLOG_MARK, APLOG_ERR | APLOG_STARTUP, 0, NULL, "%s", msg);
} else {
- ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, ctx->r, "%s", msg);
+ ap_log_rerror(APLOG_MARK, aplog_type, 0, ctx->r, "%s", msg);
}
}
@@ -332,7 +360,7 @@ static void php_apache_sapi_log_message_ex(char *msg, request_rec *r)
if (r) {
ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r, msg, r->filename);
} else {
- php_apache_sapi_log_message(msg);
+ php_apache_sapi_log_message(msg, -1);
}
}
diff --git a/sapi/cgi/cgi_main.c b/sapi/cgi/cgi_main.c
index b4ba497..0b6deb1 100644
--- a/sapi/cgi/cgi_main.c
+++ b/sapi/cgi/cgi_main.c
@@ -711,7 +711,7 @@ static void sapi_cgi_register_variables(zval *track_vars_array)
}
}
-static void sapi_cgi_log_message(char *message)
+static void sapi_cgi_log_message(char *message, int syslog_type_int)
{
if (fcgi_is_fastcgi() && CGIG(fcgi_logging)) {
fcgi_request *request;
diff --git a/sapi/cli/php_cli.c b/sapi/cli/php_cli.c
index 594f3ff..c3e2211 100644
--- a/sapi/cli/php_cli.c
+++ b/sapi/cli/php_cli.c
@@ -377,7 +377,7 @@ static void sapi_cli_register_variables(zval *track_vars_array) /* {{{ */
}
/* }}} */
-static void sapi_cli_log_message(char *message) /* {{{ */
+static void sapi_cli_log_message(char *message, int syslog_type_int) /* {{{ */
{
fprintf(stderr, "%s\n", message);
}
diff --git a/sapi/cli/php_cli_server.c b/sapi/cli/php_cli_server.c
index 60f68c3..21bceaf 100644
--- a/sapi/cli/php_cli_server.c
+++ b/sapi/cli/php_cli_server.c
@@ -689,7 +689,7 @@ static void sapi_cli_server_register_variables(zval *track_vars_array) /* {{{ */
zend_hash_apply_with_arguments(&client->request.headers,
(apply_func_args_t)sapi_cli_server_register_entry_cb, 1, track_vars_array);
} /* }}} */
-static void sapi_cli_server_log_message(char *msg) /* {{{ */
+static void sapi_cli_server_log_message(char *msg, int syslog_type_int) /* {{{ */
{
char buf[52];
@@ -1184,7 +1184,7 @@ static void php_cli_server_logf(const char *format, ...) /* {{{ */
}
if (sapi_module.log_message) {
- sapi_module.log_message(buf);
+ sapi_module.log_message(buf, -1);
}
efree(buf);
diff --git a/sapi/embed/php_embed.c b/sapi/embed/php_embed.c
index 7cc4e6a..2cda257 100644
--- a/sapi/embed/php_embed.c
+++ b/sapi/embed/php_embed.c
@@ -94,7 +94,7 @@ static void php_embed_send_header(sapi_header_struct *sapi_header, void *server_
{
}
-static void php_embed_log_message(char *message)
+static void php_embed_log_message(char *message, int syslog_type_int)
{
fprintf (stderr, "%s\n", message);
}
diff --git a/sapi/fpm/fpm/fpm_main.c b/sapi/fpm/fpm/fpm_main.c
index e378607..15f4da7 100644
--- a/sapi/fpm/fpm/fpm_main.c
+++ b/sapi/fpm/fpm/fpm_main.c
@@ -660,7 +660,7 @@ void sapi_cgi_log_fastcgi(int level, char *message, size_t len)
/* {{{ sapi_cgi_log_message
*/
-static void sapi_cgi_log_message(char *message)
+static void sapi_cgi_log_message(char *message, int syslog_type_int)
{
zlog(ZLOG_NOTICE, "PHP message: %s", message);
}
diff --git a/sapi/litespeed/lsapi_main.c b/sapi/litespeed/lsapi_main.c
index 7c8c474..2182a33 100644
--- a/sapi/litespeed/lsapi_main.c
+++ b/sapi/litespeed/lsapi_main.c
@@ -398,7 +398,7 @@ static int sapi_lsapi_send_headers(sapi_headers_struct *sapi_headers)
/* {{{ sapi_lsapi_send_headers
*/
-static void sapi_lsapi_log_message(char *message)
+static void sapi_lsapi_log_message(char *message, int syslog_type_int)
{
char buf[8192];
int len = strlen( message );
diff --git a/sapi/phpdbg/phpdbg.c b/sapi/phpdbg/phpdbg..c
index ecd3f39..e4fa7a5 100644
--- a/sapi/phpdbg/phpdbg.c
+++ b/sapi/phpdbg/phpdbg.c
@@ -795,7 +795,7 @@ static void php_sapi_phpdbg_send_header(sapi_header_struct *sapi_header, void *s
}
/* }}} */
-static void php_sapi_phpdbg_log_message(char *message) /* {{{ */
+static void php_sapi_phpdbg_log_message(char *message, int syslog_type_int) /* {{{ */
{
/*
* We must not request TSRM before being booted