From 8b23f8271380f676c8e0e44c7cb8af1146a0e534 Mon Sep 17 00:00:00 2001 From: Florian Schaal <florian@schaal-24.de> Date: Wed, 08 Jul 2015 09:28:26 -0400 Subject: [PATCH] moved dovecot-lmtpd from install/update to server-plugin to prevented dovecot-errors when using dovecot without dovecot-lmtpd --- install/lib/installer_base.lib.php | 8 ++++++++ install/tpl/fedora_dovecot2.conf.master | 2 +- install/dist/lib/fedora.lib.php | 8 ++++++++ install/tpl/debian_dovecot2.conf.master | 4 ++-- install/tpl/opensuse_dovecot2.conf.master | 4 ++-- install/dist/lib/gentoo.lib.php | 8 ++++++++ install/dist/lib/opensuse.lib.php | 8 ++++++++ install/tpl/debian6_dovecot2.conf.master | 4 ++-- install/dist/lib/debian60.lib.php | 8 +++++++- server/plugins-available/postfix_server_plugin.inc.php | 5 +++++ 10 files changed, 51 insertions(+), 8 deletions(-) diff --git a/install/dist/lib/debian60.lib.php b/install/dist/lib/debian60.lib.php index 8c7f1ba..8f14f9b 100644 --- a/install/dist/lib/debian60.lib.php +++ b/install/dist/lib/debian60.lib.php @@ -35,6 +35,8 @@ global $conf; $virtual_transport = 'dovecot'; + + $configure_lmtp = false; // check if virtual_transport must be changed if ($this->is_update) { @@ -44,6 +46,7 @@ if(isset($ini_array['mail']['mailbox_virtual_uidgid_maps']) && $ini_array['mail']['mailbox_virtual_uidgid_maps'] == 'y') { $virtual_transport = 'lmtp:unix:private/dovecot-lmtp'; + $configure_lmtp = true; } } @@ -114,7 +117,10 @@ } } - + //* dovecot-lmtpd + if($configure_lmtp) { + replaceLine($config_dir.'/'.$configfile, 'protocols = imap pop3', 'protocols = imap pop3 lmtp', 1, 0); + } //* dovecot-sql.conf $configfile = 'dovecot-sql.conf'; diff --git a/install/dist/lib/fedora.lib.php b/install/dist/lib/fedora.lib.php index 5420925..cbc39de 100644 --- a/install/dist/lib/fedora.lib.php +++ b/install/dist/lib/fedora.lib.php @@ -334,6 +334,8 @@ global $conf; $virtual_transport = 'dovecot'; + + $configure_lmtp = false; // check if virtual_transport must be changed if ($this->is_update) { @@ -343,6 +345,7 @@ if(isset($ini_array['mail']['mailbox_virtual_uidgid_maps']) && $ini_array['mail']['mailbox_virtual_uidgid_maps'] == 'y') { $virtual_transport = 'lmtp:unix:private/dovecot-lmtp'; + $configure_lmtp = true; } } @@ -415,6 +418,11 @@ } } + //* dovecot-lmtpd + if($configure_lmtp) { + replaceLine($config_dir.'/'.$configfile, 'protocols = imap pop3', 'protocols = imap pop3 lmtp', 1, 0); + } + //* dovecot-sql.conf $configfile = 'dovecot-sql.conf'; if(is_file("$config_dir/$configfile")){ diff --git a/install/dist/lib/gentoo.lib.php b/install/dist/lib/gentoo.lib.php index 6615dac..4e04e42 100644 --- a/install/dist/lib/gentoo.lib.php +++ b/install/dist/lib/gentoo.lib.php @@ -255,6 +255,8 @@ global $conf; $virtual_transport = 'dovecot'; + + $configure_lmtp = false; // check if virtual_transport must be changed if ($this->is_update) { @@ -264,6 +266,7 @@ if(isset($ini_array['mail']['mailbox_virtual_uidgid_maps']) && $ini_array['mail']['mailbox_virtual_uidgid_maps'] == 'y') { $virtual_transport = 'lmtp:unix:private/dovecot-lmtp'; + $configure_lmtp = true; } } @@ -312,6 +315,11 @@ $content = $this->get_template_file('dovecot.conf', true); $this->write_config_file($configfile, $content); + //* dovecot-lmtpd + if($configure_lmtp) { + replaceLine($config_dir.'/'.$configfile, 'protocols = imap pop3', 'protocols = imap pop3 lmtp', 1, 0); + } + //* dovecot-sql.conf $configfile = $config_dir.'/dovecot-sql.conf'; $content = $this->get_template_file('debian_dovecot-sql.conf', true, true); diff --git a/install/dist/lib/opensuse.lib.php b/install/dist/lib/opensuse.lib.php index 59124a5..06dc0e4 100644 --- a/install/dist/lib/opensuse.lib.php +++ b/install/dist/lib/opensuse.lib.php @@ -342,6 +342,8 @@ global $conf; $virtual_transport = 'dovecot'; + + $configure_lmtp = false; // check if virtual_transport must be changed if ($this->is_update) { @@ -351,6 +353,7 @@ if(isset($ini_array['mail']['mailbox_virtual_uidgid_maps']) && $ini_array['mail']['mailbox_virtual_uidgid_maps'] == 'y') { $virtual_transport = 'lmtp:unix:private/dovecot-lmtp'; + $configure_lmtp = true; } } @@ -419,6 +422,11 @@ } } + //* dovecot-lmtpd + if($configure_lmtp) { + replaceLine($config_dir.'/'.$configfile, 'protocols = imap pop3', 'protocols = imap pop3 lmtp', 1, 0); + } + //* dovecot-sql.conf $configfile = 'dovecot-sql.conf'; if(is_file("$config_dir/$configfile")){ diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 49545c8..2ddea5e 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -999,6 +999,8 @@ global $conf; $virtual_transport = 'dovecot'; + + $configure_lmtp = false; // check if virtual_transport must be changed if ($this->is_update) { @@ -1008,6 +1010,7 @@ if(isset($ini_array['mail']['mailbox_virtual_uidgid_maps']) && $ini_array['mail']['mailbox_virtual_uidgid_maps'] == 'y') { $virtual_transport = 'lmtp:unix:private/dovecot-lmtp'; + $configure_lmtp = true; } } @@ -1078,6 +1081,11 @@ } } + //* dovecot-lmtpd + if($configure_lmtp) { + replaceLine($config_dir.'/'.$configfile, 'protocols = imap pop3', 'protocols = imap pop3 lmtp', 1, 0); + } + //* dovecot-sql.conf $configfile = 'dovecot-sql.conf'; if(is_file($config_dir.'/'.$configfile)) { diff --git a/install/tpl/debian6_dovecot2.conf.master b/install/tpl/debian6_dovecot2.conf.master index ee77f4e..82c7e47 100644 --- a/install/tpl/debian6_dovecot2.conf.master +++ b/install/tpl/debian6_dovecot2.conf.master @@ -1,5 +1,5 @@ listen = *,[::] -protocols = imap pop3 lmtp +protocols = imap pop3 auth_mechanisms = plain login disable_plaintext_auth = no log_timestamp = "%Y-%m-%d %H:%M:%S " @@ -61,4 +61,4 @@ protocol lmtp { postmaster_address = webmaster@localhost mail_plugins = quota sieve -} \ No newline at end of file +} diff --git a/install/tpl/debian_dovecot2.conf.master b/install/tpl/debian_dovecot2.conf.master index 39cf60f..a753433 100644 --- a/install/tpl/debian_dovecot2.conf.master +++ b/install/tpl/debian_dovecot2.conf.master @@ -1,5 +1,5 @@ listen = *,[::] -protocols = imap pop3 lmtp +protocols = imap pop3 auth_mechanisms = plain login disable_plaintext_auth = no log_timestamp = "%Y-%m-%d %H:%M:%S " @@ -62,4 +62,4 @@ protocol lmtp { postmaster_address = webmaster@localhost mail_plugins = quota sieve -} \ No newline at end of file +} diff --git a/install/tpl/fedora_dovecot2.conf.master b/install/tpl/fedora_dovecot2.conf.master index 9fca319..a527676 100644 --- a/install/tpl/fedora_dovecot2.conf.master +++ b/install/tpl/fedora_dovecot2.conf.master @@ -1,5 +1,5 @@ listen = *,[::] -protocols = imap pop3 lmtp +protocols = imap pop3 auth_mechanisms = plain login disable_plaintext_auth = no log_timestamp = "%Y-%m-%d %H:%M:%S " diff --git a/install/tpl/opensuse_dovecot2.conf.master b/install/tpl/opensuse_dovecot2.conf.master index 1b9d9dc..8deb305 100644 --- a/install/tpl/opensuse_dovecot2.conf.master +++ b/install/tpl/opensuse_dovecot2.conf.master @@ -1,5 +1,5 @@ listen = *,[::] -protocols = imap pop3 lmtp +protocols = imap pop3 auth_mechanisms = plain login disable_plaintext_auth = no log_timestamp = "%Y-%m-%d %H:%M:%S " @@ -59,4 +59,4 @@ protocol lmtp { postmaster_address = webmaster@localhost mail_plugins = quota sieve -} \ No newline at end of file +} diff --git a/server/plugins-available/postfix_server_plugin.inc.php b/server/plugins-available/postfix_server_plugin.inc.php index f6a55f5..15accbf 100644 --- a/server/plugins-available/postfix_server_plugin.inc.php +++ b/server/plugins-available/postfix_server_plugin.inc.php @@ -166,6 +166,8 @@ if($app->system->is_installed('dovecot')) { exec("postconf -e 'virtual_transport = lmtp:unix:private/dovecot-lmtp'"); exec('postfix reload'); + $app->system->replaceLine("/etc/dovecot/dovecot.conf", "protocols = imap pop3", "protocols = imap pop3 lmtp"); + exec($conf['init_scripts'] . '/' . 'dovecot restart'); } } else { @@ -173,8 +175,11 @@ if($app->system->is_installed('dovecot')) { exec("postconf -e 'virtual_transport = dovecot'"); exec('postfix reload'); + $app->system->replaceLine("/etc/dovecot/dovecot.conf", "protocols = imap pop3 lmtp", "protocols = imap pop3"); + exec($conf['init_scripts'] . '/' . 'dovecot restart'); } } +print_r($mail_config); exec("postconf -e 'mailbox_size_limit = ".intval($mail_config['mailbox_size_limit']*1024*1024)."'"); exec("postconf -e 'message_size_limit = ".intval($mail_config['message_size_limit']*1024*1024)."'"); -- Gitblit v1.9.1