Package: dovecot-common
Using : Debian 6 , Postfix + MySQL + Dovecot IMAP, POP3, LDA

At postfix main.cf :

virtual_transport = dovecot



At postfix master.cf :

dovecot unix    -       n       n       -       -       pipe
     flags=DRhu user=client1:client1 argv=/usr/lib/dovecot/deliver -f 
${sender} -d ${user}@${nexthop} -n -m ${extension}

dovecot limit :

plugin {
quota = maildir:User quota
quota_rule = storage=50M:messages=1000
quota_exceeded_message = Quota exceeded, please go to 
http://www.example.com/over_quota_help for instructions on how to fix this.
}

dovecot sql :

user_query = SELECT CONCAT(`domain`,'/',`login`) AS maildir, 1001 AS 
uid, 1001 AS gid, CONCAT('*:bytes=',quota*1024*1024) as quota_rule FROM 
postfix_mailboxes JOIN postfix_virtual_domains ON domain_id = 
postfix_virtual_domains.id WHERE domain = '%d' AND login = '%n'

mysql> SELECT CONCAT(`domain`,'/',`login`) AS maildir, 1001 AS uid, 1001 
AS gid, CONCAT('*:bytes=',quota*1024*1024) as quota_rule FROM 
postfix_mailboxes JOIN postfix_virtual_domains ON domain_id = 
postfix_virtual_domains.id WHERE domain = 'service.local' AND login = 
'test2';
+---------------------+------+------+-----------------+
| maildir             | uid  | gid  | quota_rule      |
+---------------------+------+------+-----------------+
| service.local/test2 | 1001 | 1001 | *:bytes=1048576 |
+---------------------+------+------+-----------------+
1 row in set (0.00 sec)


As you see, quota limit - 1mb . When I try to check my quota and send 
mail with attach large, then 1mb ( for example - 2mb ) I have error at 
my logs :

Feb 25 14:52:04 kolyav postfix/pipe[16143]: 4FD3510A23A5: 
to=<test2@service.local>, relay=dovecot, delay=3.7, delays=3.2/0/0/0.54, 
dsn=5.3.0, status=bounced (Command died with signal 11: 
"/usr/lib/dovecot/deliver")

Okay, I try to debug it with dbg, because signal 11 - it's crash. I 
change my dovecot lda at postfix master.cf :

dovecot unix    -       n       n       -       -       pipe
      flags=DRhu user=client1:client1 argv=/usr/lib/dovecot/gdbhelper 
/tmp/deliver.sh -d ${recipient}

cat /tmp/deliver.sh

#!/bin/sh

sleep 1
exec /usr/lib/dovecot/deliver $*

and try one more time and have debug information :

GNU gdb (GDB) 7.0.1-debian
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
"/tmp/deliver.sh": not in executable format: File format not recognized
Attaching to process 18254
Reading symbols from /bin/bash...(no debugging symbols found)...done.
Reading symbols from /lib/libncurses.so.5...(no debugging symbols 
found)...done.
Loaded symbols for /lib/libncurses.so.5
Reading symbols from /lib/libdl.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/libc.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols 
found)...done.
Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /lib/libnss_compat.so.2...(no debugging symbols 
found)...done.
Loaded symbols for /lib/libnss_compat.so.2
Reading symbols from /lib/libnsl.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /lib/libnss_nis.so.2...(no debugging symbols 
found)...done.
Loaded symbols for /lib/libnss_nis.so.2
Reading symbols from /lib/libnss_files.so.2...(no debugging symbols 
found)...done.
Loaded symbols for /lib/libnss_files.so.2
Can't read symbols from system-supplied DSO at 0x7fff42274000: File 
truncated
0x00002ac22428483e in waitpid () from /lib/libc.so.6
(gdb) Signal        Stop        Print   Pass to program Description
SIGPIPE       No        Yes     Yes             Broken pipe
(gdb) Signal        Stop        Print   Pass to program Description
SIGALRM       No        No      Yes             Alarm clock
(gdb) Signal        Stop        Print   Pass to program Description
SIG32         No        Yes     Yes             Real-time event 32
(gdb) Continuing.
Executing new program: /usr/lib/dovecot/deliver
[Thread debugging using libthread_db enabled]

Program received signal SIGSEGV, Segmentation fault.
0x0000000000490886 in message_parser_parse_next_block ()
(gdb) #0  0x0000000000490886 in message_parser_parse_next_block ()
No symbol table info available.
#1  0x000000000044d0af in index_mail_cache_parse_continue ()
No symbol table info available.
#2  0x000000000044e367 in index_mail_cache_parse_deinit ()
No symbol table info available.
#3  0x0000000000443374 in mbox_save_finish ()
No symbol table info available.
#4  0x00000000004603d3 in mailbox_save_begin ()
No symbol table info available.
#5  0x000000000045c04a in mail_storage_copy ()
No symbol table info available.
#6  0x00002ac09696903c in ?? ()
    from /usr/lib/dovecot/modules/lda/lib10_quota_plugin.so
No symbol table info available.
#7  0x000000000041c4c7 in deliver_save ()
No symbol table info available.
#8  0x000000000041df20 in main ()
No symbol table info available.
(gdb) A debugging session is active.

         Inferior 1 [process 18254] will be detached.

Quit anyway? (y or n) [answered Y; input not from terminal]
LND: Sending signal 11 to Thread 0x2ac09695d500 (LWP 18254)
Detaching from program: /usr/lib/dovecot/deliver, process 18254




In this debug log I see seg fault :

Program received signal SIGSEGV, Segmentation fault.
0x0000000000490886 in message_parser_parse_next_block ()

this errors goes me to this patch - 
http://hg.dovecot.org/dovecot-2.0/rev/89936539e3b8

but I can't see dovecot2 at any Debian repository.


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to