From: R David Murray Date: Thu, 29 Mar 2012 11:15:45 +0000 (-0400) Subject: #14416: conditionally add LOG_AUTHPRIV facility and LOG_ODELAY to syslog. X-Git-Tag: v3.3.0a2~30^2~8 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=eac0939ddd56f60664de9cb85aa32910d7b22c78;p=python #14416: conditionally add LOG_AUTHPRIV facility and LOG_ODELAY to syslog. Unlike the other facilities, we don't use a fallback for AUTHPRIV if it doesn't exist. Because it is intended for logging sensitive log messages, it is better that a program trying to log such messages fail than that it log them insecurely. Initial patch by Federico Reghenzani. --- diff --git a/Doc/library/syslog.rst b/Doc/library/syslog.rst index 645c326678..aa0f5a176c 100644 --- a/Doc/library/syslog.rst +++ b/Doc/library/syslog.rst @@ -78,12 +78,14 @@ Priority levels (high to low): Facilities: :const:`LOG_KERN`, :const:`LOG_USER`, :const:`LOG_MAIL`, :const:`LOG_DAEMON`, :const:`LOG_AUTH`, :const:`LOG_LPR`, :const:`LOG_NEWS`, :const:`LOG_UUCP`, - :const:`LOG_CRON`, :const:`LOG_SYSLOG` and :const:`LOG_LOCAL0` to - :const:`LOG_LOCAL7`. + :const:`LOG_CRON`, :const:`LOG_SYSLOG`, :const:`LOG_LOCAL0` to + :const:`LOG_LOCAL7`, and, if defined in ````, + :const:`LOG_AUTHPRIV`. Log options: - :const:`LOG_PID`, :const:`LOG_CONS`, :const:`LOG_NDELAY`, :const:`LOG_NOWAIT` - and :const:`LOG_PERROR` if defined in ````. + :const:`LOG_PID`, :const:`LOG_CONS`, :const:`LOG_NDELAY`, and, if defined + in ````, :const:`LOG_ODELAY`, :const:`LOG_NOWAIT`, and + :const:`LOG_PERROR`. Examples diff --git a/Misc/ACKS b/Misc/ACKS index 4e6597dea1..632d004f51 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -832,6 +832,7 @@ Terry Reedy Gareth Rees Steve Reeves Lennart Regebro +Federico Reghenzani Ofir Reichenberg Sean Reifschneider Michael P. Reilly diff --git a/Misc/NEWS b/Misc/NEWS index 2acf6c0cb4..fd4abd88c8 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -34,6 +34,9 @@ Core and Builtins Library ------- +- Issue #14416: syslog now defines the LOG_ODELAY and LOG_AUTHPRIV constants + if they are defined in . + - IDLE can be launched as python -m idlelib - Issue #14295: Add unittest.mock diff --git a/Modules/syslogmodule.c b/Modules/syslogmodule.c index c7a2487d29..8b877cfdbc 100644 --- a/Modules/syslogmodule.c +++ b/Modules/syslogmodule.c @@ -291,6 +291,9 @@ PyInit_syslog(void) PyModule_AddIntConstant(m, "LOG_PID", LOG_PID); PyModule_AddIntConstant(m, "LOG_CONS", LOG_CONS); PyModule_AddIntConstant(m, "LOG_NDELAY", LOG_NDELAY); +#ifdef LOG_ODELAY + PyModule_AddIntConstant(m, "LOG_ODELAY", LOG_ODELAY); +#endif #ifdef LOG_NOWAIT PyModule_AddIntConstant(m, "LOG_NOWAIT", LOG_NOWAIT); #endif @@ -331,5 +334,10 @@ PyInit_syslog(void) PyModule_AddIntConstant(m, "LOG_CRON", LOG_CRON); PyModule_AddIntConstant(m, "LOG_UUCP", LOG_UUCP); PyModule_AddIntConstant(m, "LOG_NEWS", LOG_NEWS); + +#ifdef LOG_AUTHPRIV + PyModule_AddIntConstant(m, "LOG_AUTHPRIV", LOG_AUTHPRIV); +#endif + return m; }