X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2Fsyslog.pl;h=f0dbb1c96a2078a8d4401eb084b6c9cf723ffb2d;hb=25a9b71dd59b11670c141e854433de63714eefda;hp=fe9b183be36aec4329b70955cf80b496ee57ab25;hpb=34de22dd6ede167a09e3a3ee571665ba2c647f94;p=p5sagit%2Fp5-mst-13.2.git diff --git a/lib/syslog.pl b/lib/syslog.pl index fe9b183..f0dbb1c 100644 --- a/lib/syslog.pl +++ b/lib/syslog.pl @@ -2,33 +2,7 @@ # syslog.pl # # $Log: syslog.pl,v $ -# Revision 3.0.1.4 90/11/10 01:41:11 lwall -# patch38: syslog.pl was referencing an absolute path # -# Revision 3.0.1.3 90/10/15 17:42:18 lwall -# patch29: various portability fixes -# -# Revision 3.0.1.1 90/08/09 03:57:17 lwall -# patch19: Initial revision -# -# Revision 1.2 90/06/11 18:45:30 18:45:30 root () -# - Changed 'warn' to 'mail|warning' in test call (to give example of -# facility specification, and because 'warn' didn't work on HP-UX). -# - Fixed typo in &openlog ("ncons" should be "cons"). -# - Added (package-global) $maskpri, and &setlogmask. -# - In &syslog: -# - put argument test ahead of &connect (why waste cycles?), -# - allowed facility to be specified in &syslog's first arg (temporarily -# overrides any $facility set in &openlog), just as in syslog(3C), -# - do a return 0 when bit for $numpri not set in log mask (see syslog(3C)), -# - changed $whoami code to use getlogin, getpwuid($<) and 'syslog' -# (in that order) when $ident is null, -# - made PID logging consistent with syslog(3C) and subject to $lo_pid only, -# - fixed typo in "print CONS" statement ($ # modified to use sockets by Larry Wall # NOTE: openlog now takes three arguments, just like openlog(3) @@ -55,10 +29,20 @@ package syslog; +use warnings::register; + $host = 'localhost' unless $host; # set $syslog'host to change +if ($] >= 5 && warnings::enabled()) { + warnings::warn("You should 'use Sys::Syslog' instead; continuing"); +} + require 'syslog.ph'; + eval 'use Socket; 1' || + eval { require "socket.ph" } || + require "sys/socket.ph"; + $maskpri = &LOG_UPTO(&LOG_DEBUG); sub main'openlog { @@ -158,25 +142,25 @@ sub main'syslog { sub xlate { local($name) = @_; - $name =~ y/a-z/A-Z/; + $name = uc $name; $name = "LOG_$name" unless $name =~ /^LOG_/; $name = "syslog'$name"; - eval &$name || -1; + defined &$name ? &$name : -1; } sub connect { $pat = 'S n C4 x8'; - $af_unix = 1; - $af_inet = 2; + $af_unix = &AF_UNIX; + $af_inet = &AF_INET; - $stream = 1; - $datagram = 2; + $stream = &SOCK_STREAM; + $datagram = &SOCK_DGRAM; ($name,$aliases,$proto) = getprotobyname('udp'); $udp = $proto; - ($name,$aliase,$port,$proto) = getservbyname('syslog','udp'); + ($name,$aliases,$port,$proto) = getservbyname('syslog','udp'); $syslog = $port; if (chop($myname = `hostname`)) {