Skip to content

Commit 8b23f82

Browse files
author
Florian Schaal
committed
moved dovecot-lmtpd from install/update to server-plugin to prevented dovecot-errors when using dovecot without dovecot-lmtpd
1 parent 6688597 commit 8b23f82

File tree

10 files changed

+51
-8
lines changed

10 files changed

+51
-8
lines changed

install/dist/lib/debian60.lib.php

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ public function configure_dovecot()
3535
global $conf;
3636

3737
$virtual_transport = 'dovecot';
38+
39+
$configure_lmtp = false;
3840

3941
// check if virtual_transport must be changed
4042
if ($this->is_update) {
@@ -44,6 +46,7 @@ public function configure_dovecot()
4446

4547
if(isset($ini_array['mail']['mailbox_virtual_uidgid_maps']) && $ini_array['mail']['mailbox_virtual_uidgid_maps'] == 'y') {
4648
$virtual_transport = 'lmtp:unix:private/dovecot-lmtp';
49+
$configure_lmtp = true;
4750
}
4851
}
4952

@@ -114,7 +117,10 @@ public function configure_dovecot()
114117
}
115118
}
116119

117-
120+
//* dovecot-lmtpd
121+
if($configure_lmtp) {
122+
replaceLine($config_dir.'/'.$configfile, 'protocols = imap pop3', 'protocols = imap pop3 lmtp', 1, 0);
123+
}
118124

119125
//* dovecot-sql.conf
120126
$configfile = 'dovecot-sql.conf';

install/dist/lib/fedora.lib.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -334,6 +334,8 @@ public function configure_dovecot()
334334
global $conf;
335335

336336
$virtual_transport = 'dovecot';
337+
338+
$configure_lmtp = false;
337339

338340
// check if virtual_transport must be changed
339341
if ($this->is_update) {
@@ -343,6 +345,7 @@ public function configure_dovecot()
343345

344346
if(isset($ini_array['mail']['mailbox_virtual_uidgid_maps']) && $ini_array['mail']['mailbox_virtual_uidgid_maps'] == 'y') {
345347
$virtual_transport = 'lmtp:unix:private/dovecot-lmtp';
348+
$configure_lmtp = true;
346349
}
347350
}
348351

@@ -415,6 +418,11 @@ public function configure_dovecot()
415418
}
416419
}
417420

421+
//* dovecot-lmtpd
422+
if($configure_lmtp) {
423+
replaceLine($config_dir.'/'.$configfile, 'protocols = imap pop3', 'protocols = imap pop3 lmtp', 1, 0);
424+
}
425+
418426
//* dovecot-sql.conf
419427
$configfile = 'dovecot-sql.conf';
420428
if(is_file("$config_dir/$configfile")){

install/dist/lib/gentoo.lib.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -255,6 +255,8 @@ public function configure_dovecot()
255255
global $conf;
256256

257257
$virtual_transport = 'dovecot';
258+
259+
$configure_lmtp = false;
258260

259261
// check if virtual_transport must be changed
260262
if ($this->is_update) {
@@ -264,6 +266,7 @@ public function configure_dovecot()
264266

265267
if(isset($ini_array['mail']['mailbox_virtual_uidgid_maps']) && $ini_array['mail']['mailbox_virtual_uidgid_maps'] == 'y') {
266268
$virtual_transport = 'lmtp:unix:private/dovecot-lmtp';
269+
$configure_lmtp = true;
267270
}
268271
}
269272

@@ -312,6 +315,11 @@ public function configure_dovecot()
312315
$content = $this->get_template_file('dovecot.conf', true);
313316
$this->write_config_file($configfile, $content);
314317

318+
//* dovecot-lmtpd
319+
if($configure_lmtp) {
320+
replaceLine($config_dir.'/'.$configfile, 'protocols = imap pop3', 'protocols = imap pop3 lmtp', 1, 0);
321+
}
322+
315323
//* dovecot-sql.conf
316324
$configfile = $config_dir.'/dovecot-sql.conf';
317325
$content = $this->get_template_file('debian_dovecot-sql.conf', true, true);

install/dist/lib/opensuse.lib.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -342,6 +342,8 @@ public function configure_dovecot()
342342
global $conf;
343343

344344
$virtual_transport = 'dovecot';
345+
346+
$configure_lmtp = false;
345347

346348
// check if virtual_transport must be changed
347349
if ($this->is_update) {
@@ -351,6 +353,7 @@ public function configure_dovecot()
351353

352354
if(isset($ini_array['mail']['mailbox_virtual_uidgid_maps']) && $ini_array['mail']['mailbox_virtual_uidgid_maps'] == 'y') {
353355
$virtual_transport = 'lmtp:unix:private/dovecot-lmtp';
356+
$configure_lmtp = true;
354357
}
355358
}
356359

@@ -419,6 +422,11 @@ public function configure_dovecot()
419422
}
420423
}
421424

425+
//* dovecot-lmtpd
426+
if($configure_lmtp) {
427+
replaceLine($config_dir.'/'.$configfile, 'protocols = imap pop3', 'protocols = imap pop3 lmtp', 1, 0);
428+
}
429+
422430
//* dovecot-sql.conf
423431
$configfile = 'dovecot-sql.conf';
424432
if(is_file("$config_dir/$configfile")){

install/lib/installer_base.lib.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -999,6 +999,8 @@ public function configure_dovecot() {
999999
global $conf;
10001000

10011001
$virtual_transport = 'dovecot';
1002+
1003+
$configure_lmtp = false;
10021004

10031005
// check if virtual_transport must be changed
10041006
if ($this->is_update) {
@@ -1008,6 +1010,7 @@ public function configure_dovecot() {
10081010

10091011
if(isset($ini_array['mail']['mailbox_virtual_uidgid_maps']) && $ini_array['mail']['mailbox_virtual_uidgid_maps'] == 'y') {
10101012
$virtual_transport = 'lmtp:unix:private/dovecot-lmtp';
1013+
$configure_lmtp = true;
10111014
}
10121015
}
10131016

@@ -1078,6 +1081,11 @@ public function configure_dovecot() {
10781081
}
10791082
}
10801083

1084+
//* dovecot-lmtpd
1085+
if($configure_lmtp) {
1086+
replaceLine($config_dir.'/'.$configfile, 'protocols = imap pop3', 'protocols = imap pop3 lmtp', 1, 0);
1087+
}
1088+
10811089
//* dovecot-sql.conf
10821090
$configfile = 'dovecot-sql.conf';
10831091
if(is_file($config_dir.'/'.$configfile)) {

install/tpl/debian6_dovecot2.conf.master

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
listen = *,[::]
2-
protocols = imap pop3 lmtp
2+
protocols = imap pop3
33
auth_mechanisms = plain login
44
disable_plaintext_auth = no
55
log_timestamp = "%Y-%m-%d %H:%M:%S "
@@ -61,4 +61,4 @@ protocol lda {
6161
protocol lmtp {
6262
postmaster_address = webmaster@localhost
6363
mail_plugins = quota sieve
64-
}
64+
}

install/tpl/debian_dovecot2.conf.master

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
listen = *,[::]
2-
protocols = imap pop3 lmtp
2+
protocols = imap pop3
33
auth_mechanisms = plain login
44
disable_plaintext_auth = no
55
log_timestamp = "%Y-%m-%d %H:%M:%S "
@@ -62,4 +62,4 @@ protocol lda {
6262
protocol lmtp {
6363
postmaster_address = webmaster@localhost
6464
mail_plugins = quota sieve
65-
}
65+
}

install/tpl/fedora_dovecot2.conf.master

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
listen = *,[::]
2-
protocols = imap pop3 lmtp
2+
protocols = imap pop3
33
auth_mechanisms = plain login
44
disable_plaintext_auth = no
55
log_timestamp = "%Y-%m-%d %H:%M:%S "

install/tpl/opensuse_dovecot2.conf.master

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
listen = *,[::]
2-
protocols = imap pop3 lmtp
2+
protocols = imap pop3
33
auth_mechanisms = plain login
44
disable_plaintext_auth = no
55
log_timestamp = "%Y-%m-%d %H:%M:%S "
@@ -59,4 +59,4 @@ protocol lda {
5959
protocol lmtp {
6060
postmaster_address = webmaster@localhost
6161
mail_plugins = quota sieve
62-
}
62+
}

server/plugins-available/postfix_server_plugin.inc.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,15 +166,20 @@ function update($event_name, $data) {
166166
if($app->system->is_installed('dovecot')) {
167167
exec("postconf -e 'virtual_transport = lmtp:unix:private/dovecot-lmtp'");
168168
exec('postfix reload');
169+
$app->system->replaceLine("/etc/dovecot/dovecot.conf", "protocols = imap pop3", "protocols = imap pop3 lmtp");
170+
exec($conf['init_scripts'] . '/' . 'dovecot restart');
169171
}
170172
}
171173
else {
172174
// If dovecot switch to dovecot
173175
if($app->system->is_installed('dovecot')) {
174176
exec("postconf -e 'virtual_transport = dovecot'");
175177
exec('postfix reload');
178+
$app->system->replaceLine("/etc/dovecot/dovecot.conf", "protocols = imap pop3 lmtp", "protocols = imap pop3");
179+
exec($conf['init_scripts'] . '/' . 'dovecot restart');
176180
}
177181
}
182+
print_r($mail_config);
178183

179184
exec("postconf -e 'mailbox_size_limit = ".intval($mail_config['mailbox_size_limit']*1024*1024)."'");
180185
exec("postconf -e 'message_size_limit = ".intval($mail_config['message_size_limit']*1024*1024)."'");

0 commit comments

Comments
 (0)