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