X-Git-Url: https://git.hcoop.net/hcoop/debian/exim4.git/blobdiff_plain/420a0d19af455b8c65ca20e08b500bd9c4995860..2813c06e9d6e591298239bc7dac3fb1b5c778a7c:/src/exipick.src diff --git a/src/exipick.src b/src/exipick.src index 4708ebb..4999d84 100644 --- a/src/exipick.src +++ b/src/exipick.src @@ -1,7 +1,9 @@ #!PERL_COMMAND -# This variable should be set by the building process to Exim's spool directory. -my $spool = 'SPOOL_DIRECTORY'; +# This variables should be set by the building process +my $spool = 'SPOOL_DIRECTORY'; # may be overridden later +my $exim = 'BIN_DIRECTORY/exim'; + # Need to set this dynamically during build, but it's not used right now anyway. my $charset = 'ISO-8859-1'; @@ -10,6 +12,7 @@ my $charset = 'ISO-8859-1'; # http://www.exim.org/eximwiki/ToolExipickManPage use strict; +BEGIN { pop @INC if $INC[-1] eq '.' }; use Getopt::Long; my($p_name) = $0 =~ m|/?([^/]+)$|; @@ -79,7 +82,7 @@ GetOptions( 'show-tests' => \$G::show_tests # display tests as applied to each message ) || exit(1); -# if both freeze and thaw specified, only thaw as it is less desctructive +# if both freeze and thaw specified, only thaw as it is less destructive $G::freeze = undef if ($G::freeze && $G::thaw); freeze_start() if ($G::freeze); thaw_start() if ($G::thaw); @@ -111,7 +114,9 @@ $G::and = $G::and; # shut up -w $G::msg_ids = {}; # short circuit when crit is only MID $G::caseless = $G::caseful ? 0 : 1; # nocase by default, case if both @G::recipients_crit = (); # holds per-recip criteria -$spool = $G::spool if ($G::spool); +$spool = defined $G::spool ? $G::spool + : do { chomp($_ = `$exim -n -bP spool_directory`); + $_ // $spool }; my $input_dir = $G::input_dir || ($G::finput ? "Finput" : "input"); my $count_only = 1 if ($G::mailq_bpc || $G::qgrep_c); my $unsorted = 1 if ($G::mailq_bpr || $G::mailq_bpra || @@ -757,7 +762,7 @@ sub _decode_2047 { $i += 2; } } - elsif ($ow[$i] =~ /\s/) { # whitspace is illegal + elsif ($ow[$i] =~ /\s/) { # whitespace is illegal $e = 1; last; } @@ -1387,7 +1392,7 @@ Display only the message IDs (exiqgrep) =item --input-dir -Set the name of the directory under the spool directory. By defaut this is "input". If this starts with '/', the value of --spool is ignored. See also --finput. +Set the name of the directory under the spool directory. By default this is "input". If this starts with '/', the value of --spool is ignored. See also --finput. =item -l @@ -1427,7 +1432,8 @@ Same as '$shown_message_size eq ' (exiqgrep) =item --spool -Set the path to the exim spool to use. This value will have the argument to --input or 'input' appended, or be ignored if --input is a full path. +Set the path to the exim spool to use. This value will have the argument to --input or 'input' appended, or be ignored if --input is a full path. If not specified, exipick uses the value from C, and if this fails, the F +from build time (F) is used. =item --show-rules