Net::hostent documentation error
[p5sagit/p5-mst-13.2.git] / lib / Sys / Syslog.pm
index c524170..9efcfbf 100644 (file)
@@ -154,7 +154,7 @@ sub syslog {
 
     $whoami = $ident;
 
-    if (!$ident && $mask =~ /^(\S.*):\s?(.*)/) {
+    if (!$whoami && $mask =~ /^(\S.*?):\s?(.*)/) {
        $whoami = $1;
        $mask = $2;
     } 
@@ -194,14 +194,14 @@ sub xlate {
     $name = uc $name;
     $name = "LOG_$name" unless $name =~ /^LOG_/;
     $name = "Sys::Syslog::$name";
-    eval(&$name) || -1;
+    defined &$name ? &$name : -1;
 }
 
 sub connect {
     unless ($host) {
        require Sys::Hostname;
        my($host_uniq) = Sys::Hostname::hostname();
-       ($host) = $host_uniq =~ /(\w+)/;
+       ($host) = $host_uniq =~ /([A-Za-z0-9_.-]+)/; # allow FQDN (inc _)
     }
     my $udp = getprotobyname('udp');
     my $syslog = getservbyname('syslog','udp');