exigrep: fallback to $PATH if zcat is missing. BUG 1575
authorHeiko Schlittermann (HS12) <hs@schlittermann.de>
Sun, 26 Apr 2015 21:20:29 +0000 (23:20 +0200)
committerHeiko Schlittermann (HS12) <hs@schlittermann.de>
Sun, 26 Apr 2015 21:25:58 +0000 (23:25 +0200)
doc/doc-docbook/spec.xfpt
doc/doc-txt/ChangeLog
src/src/EDITME
src/src/exigrep.src

index 9b7ada823fc9ad29c48d0aaf46367cbe3fb121db..bc34d65b8c138e526c81c0b9d50087ddd85dcc1f 100644 (file)
@@ -35713,6 +35713,8 @@ search term.
 If the location of a &'zcat'& command is known from the definition of
 ZCAT_COMMAND in &_Local/Makefile_&, &'exigrep'& automatically passes any file
 whose name ends in COMPRESS_SUFFIX through &'zcat'& as it searches it.
+If the ZCAT_COMMAND is not executable, &'exigrep'& tries to use
+autodetection of some well known compression extensions.
 
 
 .section "Selecting messages by various criteria (exipick)" "SECTexipick"
index 08fb50f3e7cbbe8180f41be0625da32da43c5357..a75c10657b5e81358a6f1233c82da7b76a46c888 100644 (file)
@@ -89,6 +89,9 @@ HS/01 DNSSEC options (dnssec_require_domains, dnssec_request_domains)
 JH/25 Bug 466: Add RFC2322 support for MIME attachment filenames.
       Original patch from Alexander Shikoff, worked over by JH.
 
+HS/02 Bug 1575: exigrep falls back to autodetection of compressed
+      files if ZCAT_COMMAND is not executable.
+
 
 Exim version 4.85
 -----------------
index 41b929bdf36e36b0c0d29b2683f61823cc235d09..866987c25606df724683f1cc52407879f72fc840 100644 (file)
@@ -876,9 +876,15 @@ COMPRESS_SUFFIX=gz
 # If the exigrep utility is fed compressed log files, it tries to uncompress
 # them using this command.
 
+# Leave it empty to enforce autodetection at runtime:
+# ZCAT_COMMAND=
+#
+# Omit the path if you want to use your system's PATH:
+# ZCAT_COMMAND=zcat
+#
+# Or specify the full pathname:
 ZCAT_COMMAND=/usr/bin/zcat
 
-
 #------------------------------------------------------------------------------
 # Compiling in support for embedded Perl: If you want to be able to
 # use Perl code in Exim's string manipulation language and you have Perl
index 419fcb54ccf711121d46fea1afd985b6f4c979f8..1b5bcf8eae6908ef3eb84152d669c239cc59d384 100644 (file)
@@ -224,7 +224,7 @@ if (@ARGV)
   foreach (@ARGV)
     {
     my $filename = $_;
-    if ($filename =~ /\.(?:COMPRESS_SUFFIX)$/o)
+    if (-x 'ZCAT_COMMAND' && $filename =~ /\.(?:COMPRESS_SUFFIX)$/o)
       {
       open(LOG, "ZCAT_COMMAND $filename |") ||
         die "Unable to zcat $filename: $!\n";