mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-05 12:16:00 +00:00
main/syslog: Allow dynamic logs, such as security events, to log to the syslog
The security event log uses a dynamic log level (SECURITY) that is registered with the Asterisk logging core. Unfortunately, the syslog would ignore log statements that had a dynamic log level associated with them. Because the syslog cannot handle ad hoc dynamic log levels, this patch treats any dynamic log entries sent to the syslog as logs with a level of NOTICE. ASTERISK-20744 #close Reported by: Michael Keuter Tested by: Michael L. Young, Jacek Konieczny patches: asterisk-20744-syslog-dynamic-logging_trunk.diff uploaded by Michael L. Young (license 5026) ........ Merged revisions 430506 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@430507 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -28,6 +28,8 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#define ASTNUMLOGLEVELS 32
|
||||
|
||||
/*!
|
||||
* \since 1.8
|
||||
* \brief Maps a syslog facility name from a string to a syslog facility
|
||||
|
@@ -163,8 +163,16 @@ static const int logger_level_to_syslog_map[] = {
|
||||
|
||||
int ast_syslog_priority_from_loglevel(int level)
|
||||
{
|
||||
/* First 16 levels are reserved for system use.
|
||||
* Default to using LOG_NOTICE for dynamic logging.
|
||||
*/
|
||||
if (level >= 16 && level < ASTNUMLOGLEVELS) {
|
||||
return LOG_NOTICE;
|
||||
}
|
||||
|
||||
if (level < 0 || level >= ARRAY_LEN(logger_level_to_syslog_map)) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
return logger_level_to_syslog_map[level];
|
||||
}
|
||||
|
Reference in New Issue
Block a user