From f336fffcff8213a3a180c83352d979ac707daf39 Mon Sep 17 00:00:00 2001 From: Jamie Cameron Date: Sat, 21 Apr 2018 12:12:16 -0700 Subject: [PATCH] Do all requires just once --- filter/edit.cgi | 1 - filter/filter-lib.pl | 14 +++++--------- filter/index.cgi | 1 - filter/move.cgi | 1 - filter/save.cgi | 2 +- filter/save_auto.cgi | 1 - 6 files changed, 6 insertions(+), 14 deletions(-) diff --git a/filter/edit.cgi b/filter/edit.cgi index f8c720eb7..f59952005 100755 --- a/filter/edit.cgi +++ b/filter/edit.cgi @@ -2,7 +2,6 @@ # Show details of one filter require './filter-lib.pl'; -&foreign_require("mailbox"); &ReadParse(); # Show page header and get the filter diff --git a/filter/filter-lib.pl b/filter/filter-lib.pl index 042cc0415..57bbb3d52 100755 --- a/filter/filter-lib.pl +++ b/filter/filter-lib.pl @@ -40,13 +40,12 @@ if (&get_product_name() eq 'usermin') { } &create_user_config_dirs(); - &foreign_require("procmail", "procmail-lib.pl"); + &foreign_require("mailbox"); } else { # Running under Webmin, so different modules are used - &foreign_require("procmail", "procmail-lib.pl"); - &foreign_require("mailboxes", "mailboxes-lib.pl"); - &foreign_require("usermin", "usermin-lib.pl"); + &foreign_require("mailboxes"); + &foreign_require("usermin"); $mail_system_module = $mailboxes::config{'mail_system'} == 1 ? "postfix" : $mailboxes::config{'mail_system'} == 2 ? "qmailadmin" : @@ -54,6 +53,8 @@ else { $autoreply_cmd = "$config_directory/$mail_system_module/autoreply.pl"; $user_autoreply_cmd = "$usermin::config{'usermin_dir'}/forward/autoreply.pl"; } +&foreign_require("spam"); +&foreign_require("procmail"); # list_filters([file]) # Returns a list of filter objects, which have a 1-to-1 correlation with @@ -248,7 +249,6 @@ elsif ($filter->{'cond'}) { # Set action section if ($filter->{'actionspam'}) { - &foreign_require("spam", "spam-lib.pl"); $recipe->{'type'} = '|'; $recipe->{'action'} = &spam::get_procmail_command(); push(@flags, "f", "w"); @@ -347,7 +347,6 @@ return $folder; sub get_global_spamassassin { return $global_spamassassin if ($global_spamassassin); -&foreign_require("spam", "spam-lib.pl"); local @recipes = &procmail::parse_procmail_file( $spam::config{'global_procmailrc'}); return &spam::find_spam_recipe(\@recipes) ? 1 : 0; @@ -358,7 +357,6 @@ return &spam::find_spam_recipe(\@recipes) ? 1 : 0; # Virtualmin per-domain procmail file sub get_global_spam_path { -&foreign_require("spam", "spam-lib.pl"); if ($virtualmin_domain_id) { # Read the Virtualmin procmailrc for the domain local $vmpmrc = "$config{'virtualmin_config'}/procmail/". @@ -386,7 +384,6 @@ else { # Virtualmin per-domain procmail file sub get_global_spam_delete { -&foreign_require("spam", "spam-lib.pl"); if ($virtualmin_domain_id) { # Read the Virtualmin procmailrc for the domain local $vmpmrc = "$config{'virtualmin_config'}/procmail/". @@ -576,7 +573,6 @@ else { local $folder = &file_to_folder($f->{'action'}, $folders, $home); if ($folder) { if (&get_product_name() eq 'usermin') { - &foreign_require("mailbox"); local $id = &mailbox::folder_name($folder); $action = &text('index_afolder', "". diff --git a/filter/index.cgi b/filter/index.cgi index 0b10ad8d1..b4af4d8ac 100755 --- a/filter/index.cgi +++ b/filter/index.cgi @@ -2,7 +2,6 @@ # Show a table of simple actions require './filter-lib.pl'; -&foreign_require("mailbox"); &ui_print_header(undef, $text{'index_title'}, "", undef, 0, 1); if (&get_product_name() eq 'webmin') { diff --git a/filter/move.cgi b/filter/move.cgi index 9536c1e65..66b246c35 100755 --- a/filter/move.cgi +++ b/filter/move.cgi @@ -2,7 +2,6 @@ # Apply a filter to email in some folder require './filter-lib.pl'; -&foreign_require("mailbox"); &ReadParse(); &error_setup($text{'move_err'}); diff --git a/filter/save.cgi b/filter/save.cgi index 6f0d06108..8144d9b65 100755 --- a/filter/save.cgi +++ b/filter/save.cgi @@ -2,7 +2,6 @@ # Create, update or delete a filter require './filter-lib.pl'; -&foreign_require("mailbox"); use Time::Local; &ReadParse(); @@ -84,6 +83,7 @@ else { $filter->{'condheader'} = $in{'condmenu'} || $in{'condheader'}; $filter->{'condheader'} =~ /^[a-zA-Z0-9\-]+$/ || &error($text{'save_econdheader'}); + $in{'condvalue'} = &mailbox::encode_mimeword($in{'condvalue'}); if (!$in{'condregexp'} && $in{'condvalue'} =~ /[\^\$\.\*\+\?\|\(\)\[\]\{\}\\]/) { # If the user didn't ask for a regexp but there are diff --git a/filter/save_auto.cgi b/filter/save_auto.cgi index 6364d3084..1dd69f0b7 100755 --- a/filter/save_auto.cgi +++ b/filter/save_auto.cgi @@ -2,7 +2,6 @@ # Create, update or delete an autoreply filter require './filter-lib.pl'; -&foreign_require("mailbox"); &ReadParse(); &error_setup($text{'auto_err'}); use Time::Local;