diff --git a/lib/lib_rss.php b/lib/lib_rss.php index 893bed8eb92..f648d7cd2e2 100644 --- a/lib/lib_rss.php +++ b/lib/lib_rss.php @@ -16,11 +16,27 @@ function str_starts_with(string $haystack, string $needle): bool { } } -// @phpstan-ignore-next-line -if (COPY_SYSLOG_TO_STDERR) { - openlog('FreshRSS', LOG_CONS | LOG_ODELAY | LOG_PID | LOG_PERROR, LOG_USER); -} else { - openlog('FreshRSS', LOG_CONS | LOG_ODELAY | LOG_PID, LOG_USER); +if (!function_exists('syslog')) { + // @phpstan-ignore-next-line + if (COPY_SYSLOG_TO_STDERR && !defined('STDERR')) { + define('STDERR', fopen('php://stderr', 'w')); + } + function syslog(int $priority, string $message): bool { + // @phpstan-ignore-next-line + if (COPY_SYSLOG_TO_STDERR && defined('STDERR') && STDERR) { + return fwrite(STDERR, $message . "\n") != false; + } + return false; + } +} + +if (function_exists('openlog')) { + // @phpstan-ignore-next-line + if (COPY_SYSLOG_TO_STDERR) { + openlog('FreshRSS', LOG_CONS | LOG_ODELAY | LOG_PID | LOG_PERROR, LOG_USER); + } else { + openlog('FreshRSS', LOG_CONS | LOG_ODELAY | LOG_PID, LOG_USER); + } } /**