diff options
| author | Giovanni | 2020-07-21 11:58:22 +0200 |
|---|---|---|
| committer | GitHub | 2020-07-21 11:58:22 +0200 |
| commit | b90e0ecc6b0717786ae72236c37157f1b5983521 (patch) | |
| tree | 8b9bdb4aaa8ba6bfdf1baef09df88afa64c8a4f6 /src/sp_utils.c | |
| parent | 043d9897b4d6879f9a91dbd0ccdb476649731f7c (diff) | |
Fix #338 - added log type if type is simulation, drop or log. (#339)
Co-authored-by: Giovanni Dante Grazioli <giovanni.dantegrazioli@nbs-system.com>
Diffstat (limited to 'src/sp_utils.c')
| -rw-r--r-- | src/sp_utils.c | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/src/sp_utils.c b/src/sp_utils.c index c4354b6..b9078b4 100644 --- a/src/sp_utils.c +++ b/src/sp_utils.c | |||
| @@ -50,14 +50,29 @@ void sp_log_msg(char const* restrict feature, int type, | |||
| 50 | va_end(args); | 50 | va_end(args); |
| 51 | 51 | ||
| 52 | const char* client_ip = get_ipaddr(); | 52 | const char* client_ip = get_ipaddr(); |
| 53 | const char* logtype = NULL; | ||
| 54 | switch(type) { | ||
| 55 | case SP_LOG_SIMULATION: | ||
| 56 | logtype = "simulation"; | ||
| 57 | type = E_WARNING; | ||
| 58 | break; | ||
| 59 | case SP_LOG_DROP: | ||
| 60 | logtype = "drop"; | ||
| 61 | type = E_ERROR; | ||
| 62 | break; | ||
| 63 | default: | ||
| 64 | logtype = "log"; | ||
| 65 | break; | ||
| 66 | } | ||
| 67 | |||
| 53 | switch (SNUFFLEUPAGUS_G(config).log_media) { | 68 | switch (SNUFFLEUPAGUS_G(config).log_media) { |
| 54 | case SP_SYSLOG: { | 69 | case SP_SYSLOG: { |
| 55 | const char* error_filename = zend_get_executed_filename(); | 70 | const char* error_filename = zend_get_executed_filename(); |
| 56 | int syslog_level = (type == SP_LOG_DROP) ? LOG_ERR : LOG_INFO; | 71 | int syslog_level = (type == E_ERROR) ? LOG_ERR : LOG_INFO; |
| 57 | int error_lineno = zend_get_executed_lineno(TSRMLS_C); | 72 | int error_lineno = zend_get_executed_lineno(TSRMLS_C); |
| 58 | openlog(PHP_SNUFFLEUPAGUS_EXTNAME, LOG_PID, LOG_AUTH); | 73 | openlog(PHP_SNUFFLEUPAGUS_EXTNAME, LOG_PID, LOG_AUTH); |
| 59 | syslog(syslog_level, "[snuffleupagus][%s][%s] %s in %s on line %d", | 74 | syslog(syslog_level, "[snuffleupagus][%s][%s][%s] %s in %s on line %d", |
| 60 | client_ip, feature, msg, error_filename, error_lineno); | 75 | client_ip, feature, logtype, msg, error_filename, error_lineno); |
| 61 | closelog(); | 76 | closelog(); |
| 62 | if (type == SP_LOG_DROP) { | 77 | if (type == SP_LOG_DROP) { |
| 63 | zend_bailout(); | 78 | zend_bailout(); |
| @@ -66,7 +81,7 @@ void sp_log_msg(char const* restrict feature, int type, | |||
| 66 | } | 81 | } |
| 67 | case SP_ZEND: | 82 | case SP_ZEND: |
| 68 | default: | 83 | default: |
| 69 | zend_error(type, "[snuffleupagus][%s][%s] %s", client_ip, feature, msg); | 84 | zend_error(type, "[snuffleupagus][%s][%s][%s] %s", client_ip, feature, logtype, msg); |
| 70 | break; | 85 | break; |
| 71 | } | 86 | } |
| 72 | } | 87 | } |
