INN commit: trunk (7 files)
INN Commit
Russ_Allbery at isc.org
Sat Nov 22 17:55:23 UTC 2008
Date: Saturday, November 22, 2008 @ 09:55:22
Author: iulius
Revision: 8183
Use the default native setlogsock when Sys::Syslog is version >= 0.15.
Modified:
trunk/backends/news2mail.in
trunk/backends/send-uucp.in
trunk/control/controlchan.in
trunk/control/gpgverify.in
trunk/control/perl-nocem.in
trunk/frontends/cnfsstat.in
trunk/frontends/mailpost.in
------------------------+
backends/news2mail.in | 33 +++++++++++++++++++--------------
backends/send-uucp.in | 17 +++++++++++++----
control/controlchan.in | 6 ++++--
control/gpgverify.in | 6 ++++--
control/perl-nocem.in | 6 ++++--
frontends/cnfsstat.in | 13 ++++---------
frontends/mailpost.in | 29 +++++++++++++++++++++--------
7 files changed, 69 insertions(+), 41 deletions(-)
Modified: backends/news2mail.in
===================================================================
--- backends/news2mail.in 2008-11-22 00:08:07 UTC (rev 8182)
+++ backends/news2mail.in 2008-11-22 17:55:22 UTC (rev 8183)
@@ -34,27 +34,32 @@
require 5.006;
use FileHandle;
-use Sys::Syslog;
use strict;
my $cfFile = $INN::Config::pathetc . "/news2mail.cf" ;
my $sendmail = $INN::Config::mta ;
my $sm = $INN::Config::pathbin . "/sm" ;
my %maddr = ();
+my $use_syslog = 0;
-#
-# the syslog calls are here but don't work on my system
-#
-openlog('news2mail', 'pid', 'mail');
+eval { require Sys::Syslog; import Sys::Syslog; $use_syslog = 1; };
-syslog('info', 'begin');
+if ($use_syslog) {
+ if ($Sys::Syslog::VERSION < 0.15) {
+ eval "sub Sys::Syslog::_PATH_LOG { '/dev/log' }" if $^O eq 'dec_osf';
+ Sys::Syslog::setlogsock('unix') if $^O =~ /linux|dec_osf|freebsd|darwin/;
+ }
+ openlog('news2mail', 'pid', $INN::Config::syslog_facility);
+}
+syslog('info', 'begin') if ($use_syslog);
+
#
# load the list names and their mail addresses from cf file
# #comments and blank lines are ignored
#
unless (open CF, "< $cfFile") {
- syslog('notice', 'CF open failed %m');
+ syslog('notice', 'CF open failed %m') if ($use_syslog);
die "bad CF";
}
@@ -71,7 +76,7 @@
while ( <STDIN> ) {
chomp;
- syslog('info', $_);
+ syslog('info', $_) if ($use_syslog);
my ($token, $lnames) = split /\s+/, $_, 2;
my @addrs = split /\s+/, $lnames;
@@ -80,17 +85,17 @@
my @bad = grep { !defined $maddr{$_} } @addrs;
if (! @good) {
- syslog('notice', "unknown listname $_");
+ syslog('notice', "unknown listname $_") if ($use_syslog);
next;
}
if (@bad) {
- syslog('info', 'skipping unknown lists: ', join(' ', @bad));
+ syslog('info', 'skipping unknown lists: ', join(' ', @bad)) if ($use_syslog);
}
mailto($token, $lnames, @maddr{@good});
}
-syslog ("info", "end") ;
+syslog("info", "end") if ($use_syslog);
exit 0;
@@ -102,17 +107,17 @@
my @command = (split (' ', $sendmail), '-ee', '-fnews', '-odq', @a);
# @command[0] = '/usr/local/bin/debug';
- syslog('info', join(' ', @command));
+ syslog('info', join(' ', @command)) if ($use_syslog);
unless (open(SM, '|-', @command)) {
- syslog('notice', join(' ', '|', @command), 'failed!');
+ syslog('notice', join(' ', '|', @command), 'failed!') if ($use_syslog);
die "bad $sendmail";
}
my $smgr = "$sm -q $t |";
unless (open(SMGR, $smgr)) {
- syslog('notice', "$smgr failed!");
+ syslog('notice', "$smgr failed!") if ($use_syslog);
die "bad $smgr";
}
Modified: backends/send-uucp.in
===================================================================
--- backends/send-uucp.in 2008-11-22 00:08:07 UTC (rev 8182)
+++ backends/send-uucp.in 2008-11-22 17:55:22 UTC (rev 8183)
@@ -1,5 +1,5 @@
#! /usr/bin/perl -w
-# fixscript will replace this line with code to load INN::Config::Config
+# fixscript will replace this line with code to load INN::Config
##############################################################################
# send-uucp.pl create and send UUCP news batches from the outgoing files
@@ -19,7 +19,6 @@
##############################################################################
use strict;
-use Sys::Syslog;
# for compatibility with earlier versions of INN
$INN::Config::pathetc ||= '/etc/news';
@@ -43,8 +42,18 @@
my $config_file = $INN::Config::pathetc . '/send-uucp.cf';
my $lockfile = $INN::Config::locks . '/LOCK.send-uucp';
-openlog('send-uucp', 'pid', $INN::Config::syslog_facility);
+my $use_syslog = 0;
+eval { require Sys::Syslog; import Sys::Syslog; $use_syslog = 1; };
+
+if ($use_syslog) {
+ if ($Sys::Syslog::VERSION < 0.15) {
+ eval "sub Sys::Syslog::_PATH_LOG { '/dev/log' }" if $^O eq 'dec_osf';
+ Sys::Syslog::setlogsock('unix') if $^O =~ /linux|dec_osf|freebsd|darwin/;
+ }
+ openlog('send-uucp', 'pid', $INN::Config::syslog_facility);
+}
+
my @sitelist;
if (@ARGV) {
foreach my $site (@ARGV) {
@@ -208,7 +217,7 @@
sub logmsg {
my ($msg, $lvl) = @_;
- syslog($lvl || 'notice', '%s', $msg);
+ syslog($lvl || 'notice', '%s', $msg) if ($use_syslog);
}
sub logdie {
Modified: control/controlchan.in
===================================================================
--- control/controlchan.in 2008-11-22 00:08:07 UTC (rev 8182)
+++ control/controlchan.in 2008-11-22 17:55:22 UTC (rev 8183)
@@ -49,8 +49,10 @@
}
if ($use_syslog) {
- eval "sub Sys::Syslog::_PATH_LOG { '/dev/log' }" if $^O eq 'dec_osf';
- Sys::Syslog::setlogsock('unix') if $^O =~ /linux|dec_osf|freebsd|darwin/;
+ if ($Sys::Syslog::VERSION < 0.15) {
+ eval "sub Sys::Syslog::_PATH_LOG { '/dev/log' }" if $^O eq 'dec_osf';
+ Sys::Syslog::setlogsock('unix') if $^O =~ /linux|dec_osf|freebsd|darwin/;
+ }
openlog('controlchan', 'pid', $INN::Config::syslog_facility);
}
logmsg('starting');
Modified: control/gpgverify.in
===================================================================
--- control/gpgverify.in 2008-11-22 00:08:07 UTC (rev 8182)
+++ control/gpgverify.in 2008-11-22 17:55:22 UTC (rev 8183)
@@ -184,8 +184,10 @@
eval 'use Sys::Syslog qw(:DEFAULT setlogsock)';
die "$0: cannot use Sys::Syslog: $@ [$msg]\n" if $@;
- die "$0: cannot set syslog method [$msg]\n"
- if not (setlogsock('unix') or setlogsock('inet'));
+ if ($Sys::Syslog::VERSION < 0.15) {
+ eval "sub Sys::Syslog::_PATH_LOG { '/dev/log' }" if $^O eq 'dec_osf';
+ Sys::Syslog::setlogsock('unix') if $^O =~ /linux|dec_osf|freebsd|darwin/;
+ }
$msg .= " processing $header{'Message-ID'}" if $header{'Message-ID'};
Modified: control/perl-nocem.in
===================================================================
--- control/perl-nocem.in 2008-11-22 00:08:07 UTC (rev 8182)
+++ control/perl-nocem.in 2008-11-22 17:55:22 UTC (rev 8183)
@@ -56,8 +56,10 @@
eval { require Sys::Syslog; import Sys::Syslog; $use_syslog = 1; };
if ($use_syslog) {
- eval "sub Sys::Syslog::_PATH_LOG { '/dev/log' }" if $^O eq 'dec_osf';
- Sys::Syslog::setlogsock('unix') if $^O =~ /linux|dec_osf/;
+ if ($Sys::Syslog::VERSION < 0.15) {
+ eval "sub Sys::Syslog::_PATH_LOG { '/dev/log' }" if $^O eq 'dec_osf';
+ Sys::Syslog::setlogsock('unix') if $^O =~ /linux|dec_osf|freebsd|darwin/;
+ }
openlog('nocem', '', $INN::Config::syslog_facility);
}
Modified: frontends/cnfsstat.in
===================================================================
--- frontends/cnfsstat.in 2008-11-22 00:08:07 UTC (rev 8182)
+++ frontends/cnfsstat.in 2008-11-22 17:55:22 UTC (rev 8183)
@@ -55,18 +55,13 @@
&usage if $opt_h;
if ($opt_s) {
- ## Comment out this eval line if you don't want to try to syslog
eval { require Sys::Syslog; import Sys::Syslog; $use_syslog = 1 };
if ($use_syslog) {
- if (defined &Sys::Syslog::setlogsock && $] >= 5.00403) {
- # we really need a common module to work all this junk out
- if ($OSNAME eq "dec_osf") {
- sub Sys::Syslog::_PATH_LOG { "/dev/log" }
- }
- Sys::Syslog::setlogsock('unix')
- if $OSNAME =~ /linux|freebsd|dec_osf|darwin/;
+ if ($Sys::Syslog::VERSION < 0.15) {
+ eval "sub Sys::Syslog::_PATH_LOG { '/dev/log' }" if $^O eq 'dec_osf';
+ Sys::Syslog::setlogsock('unix') if $^O =~ /linux|dec_osf|freebsd|darwin/;
}
- openlog ('cnfsstat', 'pid', $INN::Config::syslog_facility);
+ openlog('cnfsstat', 'pid', $INN::Config::syslog_facility);
} else {
print STDERR "Syslog is not available. -s option is ignored.\n";
}
Modified: frontends/mailpost.in
===================================================================
--- frontends/mailpost.in 2008-11-22 00:08:07 UTC (rev 8182)
+++ frontends/mailpost.in 2008-11-22 17:55:22 UTC (rev 8183)
@@ -17,7 +17,6 @@
use Getopt::Std;
use IPC::Open3;
use IO::Select;
-use Sys::Syslog;
use strict;
my $debugging = 0 ;
@@ -39,8 +38,18 @@
$usage =~ s!.*/!! ;
my $prog = $usage ;
-openlog $usage, "pid", $INN::Config::syslog_facility ;
+my $use_syslog = 0;
+eval { require Sys::Syslog; import Sys::Syslog; $use_syslog = 1; };
+
+if ($use_syslog) {
+ if ($Sys::Syslog::VERSION < 0.15) {
+ eval "sub Sys::Syslog::_PATH_LOG { '/dev/log' }" if $^O eq 'dec_osf';
+ Sys::Syslog::setlogsock('unix') if $^O =~ /linux|dec_osf|freebsd|darwin/;
+ }
+ openlog($prog, 'pid', $INN::Config::syslog_facility);
+}
+
$usage .= "[ -r addr ][ -f addr ][ -a approved ][ -d distribution ]" .
" [ -m mailing-list ][ -b database ][ -o output-path ] [ -c wait-time ]" .
" [ -x header[:header...] ] [ -p port ] newsgroups" ;
@@ -142,7 +151,7 @@
if ( $debugging || -t STDERR ) {
die "empty input" ;
} else {
- syslog "err", "empty input" ;
+ syslog("err", "empty input") if ($use_syslog);
exit (0) ;
}
}
@@ -173,7 +182,9 @@
if (/^\s+/) {
if (! $line) {
$msg = "First line with leading whitespace!" ;
- syslog "err", $msg unless -t STDERR ;
+ if ($use_syslog) {
+ syslog("err", $msg) unless -t STDERR;
+ }
die "$msg\n" ;
}
@@ -289,7 +300,9 @@
if (!open TMPFILE,">$tmpfile") {
$msg = "can't open temp file ($tmpfile): $!" ;
$tmpfile = undef ;
- syslog("err", "$msg\n") unless $debugging || -t STDERR ;
+ if ($use_syslog) {
+ syslog("err", "$msg\n") unless $debugging || -t STDERR;
+ }
open(TMPFILE, "|" . sprintf ($Sendmail, $Maintainer)) ||
die "die(no tmpfile): sendmail: $!\n" ;
print TMPFILE <<"EOF";
@@ -366,7 +379,7 @@
## crosspost -c
$newsgroups = &append_newsgroups($DATABASE{$message_id}, $newsgroups) ;
- syslog "err", "crosspost $newsgroups\n" if $debugging ;
+ syslog("err", "crosspost $newsgroups\n") if $debugging && $use_syslog;
}
#$DATABASE{$message_id} = sprintf "%d.%s", time, 'mailpost' ;
@@ -405,7 +418,7 @@
umask($umask_bak);
my $dup = undef ;
- syslog "err", "check " . $DATABASE{$message_id} . " : $newsgroups\n" if $debugging ;
+ syslog("err", "check " . $DATABASE{$message_id} . " : $newsgroups\n") if $debugging && $use_syslog;
$dup = 1 if ($DATABASE{$message_id} ne $newsgroups) ;
dbmclose(%DATABASE) || mailArtAndDie ("can't dbmclose $Database: $!") ;
@@ -414,7 +427,7 @@
close LOCKFILE ;
if (defined($dup)) {
- syslog "err", "mismatch $newsgroups\n" if $debugging ;
+ syslog("err", "mismatch $newsgroups\n") if $debugging && $use_syslog;
exit 0 ;
}
More information about the inn-committers
mailing list