Jacek Osiecki
2009-Sep-29  14:50 UTC
[Dovecot] Problem with dict-quota, deliver killed by delivery attempt
Hi,
I can't get quota lda plugin working...
When I enable quota plugin, the emails (delivered by exim + dovecot-lda) are
instantly rejected:
2009-09-29 16:36:12 1MsdoI-0000aJ-2L ** jacek at my-domain.pl R=mysql_localuser
T=dovecot_delivery: Child process of dovecot_delivery transport (running
command "/usr/lib64/dovecot/deliver -d $local_part@$domain  -f
$sender_address -a $original_local_part@$original_domain") was terminated
by
signal 9 (Killed)
I have checked, that neither restart of dovecot nor delivery attempt tries
to read the quotadict file (/etc/dovecot/dovecot-dict-quota.conf) - the
atime is unchanged.
I even tried to strace deliver:
strace deliver -d jacek at my-server.pl -f joshua at another-server.pl -a jacek
at my-server.pl
[...]
and it dies like this:
munmap(0x7f99011d7000, 4096)            = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2679, ...}) = 0
stat("/var/mail/sieve/my-server.pl/jacek at my-server.pl.sieve",
0x79c66dd61140) = -1 ENOENT (No such file or directory)
stat("/var/mail/mail/my-server.pl/jacek", {st_mode=S_IFDIR|0700,
st_size=4096, ...}) = 0
stat("/var/mail/mail/my-server.pl/jacek/tmp", {st_mode=S_IFDIR|0700,
st_size=4096, ...}) = 0
stat("/var/mail/mail/my-server.pl/jacek", {st_mode=S_IFDIR|0700,
st_size=4096, ...}) = 0
stat("/var/mail/mail/my-server.pl/jacek/dovecot-shared",
0x79c66dd61080) = -1 ENOENT (No such file or directory)
stat("/var/mail/mail/my-server.pl/jacek", {st_mode=S_IFDIR|0700,
st_size=4096, ...}) = 0
stat("/var/mail/mail/my-server.pl/jacek", {st_mode=S_IFDIR|0700,
st_size=4096, ...}) = 0
time(NULL)                              = 1254235039
mmap(NULL, 200704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x7f990119c000
access("/var/mail/mail/my-server.pl/jacek/cur", W_OK) = 0
open("/var/mail/mail/my-server.pl/jacek/dovecot.index.log", O_RDWR) =
8
fstat(8, {st_mode=S_IFREG|0600, st_size=420, ...}) = 0
pread(8,
"\1\2(\0<\23\302J\2\0\0\0\1\0\0\0\0\0\0\0<\23\302J\0\0\0\0\0\0\0\0"...,
40, 0) = 40
stat("/var/mail/mail/my-server.pl/jacek/dovecot.index.log.2",
0x79c66dd61130) = -1 ENOENT (No such file or directory)
open("/var/mail/mail/my-server.pl/jacek/dovecot.index", O_RDWR) = -1
ENOENT (No such file or directory)
stat("/var/mail/mail/my-server.pl/jacek/dovecot.index.log",
{st_mode=S_IFREG|0600, st_size=420, ...}) = 0
fstat(8, {st_mode=S_IFREG|0600, st_size=420, ...}) = 0
pread(8,
"\200\200\200\211@\0\0\20\377\377\377\377\0\0\0\0$\0\0\0\0\0\0\0\1\0\7\0mail"...,
1024, 40) = 380
pread(8, "", 1024, 420)                 = 0
brk(0x731000)                           = 0x731000
fstat(0, {st_mode=S_IFREG|0644, st_size=4, ...}) = 0
+++ killed by SIGKILL +++
I have completely no idea what is wrong - could anybody help?
Here is my dovecot -n output:
# 1.2.5: /etc/dovecot/dovecot.conf
Warning: fd limit 1024 is lower than what Dovecot can use under full load
(more than 1408). Either grow the limit or change login_max_processes_count
and max_mail_processes settings
# OS: Linux 2.6.30.5-grsec x86_64  ext3
base_dir: /var/run/dovecot/
log_path: /var/log/dovecot.log
info_log_path: /var/log/dovecot.info.log
protocols: pop3 pop3s imap imaps managesieve
listen(default): 127.0.0.1:143
listen(imap): 127.0.0.1:143
listen(pop3): *:110
listen(managesieve): 127.0.0.1:2000
ssl_listen: *
ssl_cert_file: /etc/ssl/server.crt
ssl_key_file: /etc/ssl/server.key
disable_plaintext_auth: no
login_dir: /var/run/dovecot//login
login_executable(default): /usr/lib64/dovecot/imap-login
login_executable(imap): /usr/lib64/dovecot/imap-login
login_executable(pop3): /usr/lib64/dovecot/pop3-login
login_executable(managesieve): /usr/lib64/dovecot/managesieve-login
max_mail_processes: 1024
first_valid_uid: 79
last_valid_uid: 79
first_valid_gid: 79
last_valid_gid: 79
mail_location: maildir:/var/mail/mail/%d/%u
maildir_copy_with_hardlinks: no
mbox_lazy_writes: no
mail_executable(default): /usr/lib64/dovecot/imap
mail_executable(imap): /usr/lib64/dovecot/imap
mail_executable(pop3): /usr/lib64/dovecot/pop3
mail_executable(managesieve): /usr/lib64/dovecot/managesieve
mail_plugins(default): autocreate quota imap_quota
mail_plugins(imap): autocreate quota imap_quota
mail_plugins(pop3): quota
mail_plugins(managesieve): 
mail_plugin_dir(default): /usr/lib64/dovecot/plugins/imap
mail_plugin_dir(imap): /usr/lib64/dovecot/plugins/imap
mail_plugin_dir(pop3): /usr/lib64/dovecot/plugins/pop3
mail_plugin_dir(managesieve): /usr/lib64/dovecot/managesieve
imap_client_workarounds(default): outlook-idle
imap_client_workarounds(imap): outlook-idle
imap_client_workarounds(pop3): 
imap_client_workarounds(managesieve): 
pop3_uidl_format(default): %08Xu%08Xv
pop3_uidl_format(imap): %08Xu%08Xv
pop3_uidl_format(pop3): %v.%u
pop3_uidl_format(managesieve): %08Xu%08Xv
lda:
   postmaster_address: postmaster at my-server.pl
   hostname: my-server.pl
   mail_plugins: sieve quota
   mail_plugin_dir: /usr/lib64/dovecot/plugins/lda
   sendmail_path: /usr/lib/sendmail
   auth_socket_path: /var/run/dovecot/auth-master
auth default:
   verbose: yes
   passdb:
     driver: sql
     args: /etc/dovecot/auth-mysql.conf
   userdb:
     driver: sql
     args: /etc/dovecot/auth-mysql.conf
   socket:
     type: listen
     client:
       path: /var/run/dovecot/auth-client
       mode: 432
       user: exim
       group: exim
     master:
       path: /var/run/dovecot/auth-master
       mode: 432
       user: root
       group: exim
plugin:
   quota: dict:user::proxy::quotadict
   sieve: /var/mail/sieve/%d/%u.sieve
   autocreate: Trash
   autocreate2: Spam
   autocreate3: Sent
   autocreate3: drafts
   autosubscribe: Trash
   autosubscribe2: Spam
   autosubscribe3: Sent
   autosubscribe3: drafts
dict:
   quotadict: mysql:/etc/dovecot/dovecot-dict-quota.conf
Best regards,
-- 
Jacek Osiecki joshua at ceti.pl GG:3828944
I don't want something I need. I want something I want.
Timo Sirainen
2009-Sep-29  14:58 UTC
[Dovecot] Problem with dict-quota, deliver killed by delivery attempt
On Tue, 2009-09-29 at 16:50 +0200, Jacek Osiecki wrote:> I can't get quota lda plugin working... > When I enable quota plugin, the emails (delivered by exim + dovecot-lda) are > instantly rejected:Yeah, there is a bug in 1.2.5 if you're using non-Maildir++ quota. This patch fixes it: http://hg.dovecot.org/dovecot-1.2/rev/3132464fbe9c> 2009-09-29 16:36:12 1MsdoI-0000aJ-2L ** jacek at my-domain.pl R=mysql_localuser > T=dovecot_delivery: Child process of dovecot_delivery transport (running > command "/usr/lib64/dovecot/deliver -d $local_part@$domain -f > $sender_address -a $original_local_part@$original_domain") was terminated by > signal 9 (Killed)Although I would have expected signal 11, not 9. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 197 bytes Desc: This is a digitally signed message part URL: <http://dovecot.org/pipermail/dovecot/attachments/20090929/ccf025d3/attachment-0002.bin>
Mario Antonio
2009-Sep-29  15:50 UTC
[Dovecot] Problem with dict-quota, deliver killed by delivery attempt
Timo Sirainen wrote:> On Tue, 2009-09-29 at 16:50 +0200, Jacek Osiecki wrote: > >> I can't get quota lda plugin working... >> When I enable quota plugin, the emails (delivered by exim + dovecot-lda) are >> instantly rejected: >> > > Yeah, there is a bug in 1.2.5 if you're using non-Maildir++ quota. This > patch fixes it: http://hg.dovecot.org/dovecot-1.2/rev/3132464fbe9c > > >> 2009-09-29 16:36:12 1MsdoI-0000aJ-2L ** jacek at my-domain.pl R=mysql_localuser >> T=dovecot_delivery: Child process of dovecot_delivery transport (running >> command "/usr/lib64/dovecot/deliver -d $local_part@$domain -f >> $sender_address -a $original_local_part@$original_domain") was terminated by >> signal 9 (Killed) >> > > Although I would have expected signal 11, not 9. >Does 1.2.5 have problems with maildir quota and imap quota? My plugin settings: quota = maildir:User quota quota_rule = *:storage=2G And in Imap: protocol imap { mail_plugins = quota imap_quota acl } M.A.
Jacek Osiecki
2009-Sep-29  19:32 UTC
[Dovecot] Problem with dict-quota, deliver killed by delivery attempt
On Tue, 29 Sep 2009, Timo Sirainen wrote:> On Tue, 2009-09-29 at 16:50 +0200, Jacek Osiecki wrote: >> I can't get quota lda plugin working... >> When I enable quota plugin, the emails (delivered by exim + dovecot-lda) are >> instantly rejected: > > Yeah, there is a bug in 1.2.5 if you're using non-Maildir++ quota. This > patch fixes it: http://hg.dovecot.org/dovecot-1.2/rev/3132464fbe9cAll right, that fixes the problem :) Thanks! However, now I have to find out how to actually configure quota... ;) [...]> Although I would have expected signal 11, not 9.I think grsecurity + pax kills it with "9": Sep 29 16:18:06 hotel kernel: [1725147.527548] PAX: From 127.0.0.1: execution attempt in: <NULL>, 00000000-00000000 00000000 Sep 29 16:18:06 hotel kernel: [1725147.527657] PAX: terminating task: /usr/lib64/dovecot/orig-deliver(orig-deliver):1858, uid/euid: 79/79, PC: (null), SP: 00007dd3bfce7748 Sep 29 16:18:06 hotel kernel: [1725147.527765] PAX: bytes at PC: ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? Best regards, -- Jacek Osiecki joshua at ceti.pl GG:3828944 I don't want something I need. I want something I want.