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