Re: [Dovecot] Segfault on dovecot 2.0.1 w/ACLs

2010-09-02 Thread Timo Sirainen
On Wed, 2010-09-01 at 16:02 -0600, Michael M. Slusarz wrote:

>prefix = #shared.
..
> So doveconf wasn't quoting the prefix value correctly in the converted  
> output.

Fixed: http://hg.dovecot.org/dovecot-2.0/rev/31387c9d5b88

> Not sure if you want to put a check/warning somewhere if  
> namespaces have the same prefixes.

Fixed: http://hg.dovecot.org/dovecot-2.0/rev/a3f016b7b914




Re: [Dovecot] Segfault on dovecot 2.0.1 w/ACLs

2010-09-01 Thread Michael M. Slusarz

Quoting Timo Sirainen :


On Tue, 2010-08-31 at 23:17 -0600, Michael M. Slusarz wrote:

5 LIST (SUBSCRIBED) "" (*) RETURN (SUBSCRIBED)
* LIST (\Subscribed) "." "INBOX"
[...]
* LIST (\Subscribed) "." "Mileage Plus"

Program received signal SIGSEGV, Segmentation fault.
0x76d0cd61 in ?? () from  
/usr/lib/dovecot/modules/lib01_acl_plugin.so

(gdb) bt full
#0  0x76d0cd61 in ?? ()
from /usr/lib/dovecot/modules/lib01_acl_plugin.so
No symbol table info available.


I couldn't reproduce this. I guess it requires some specific config. Can
you get bt with debug symbols and/or give full doveconf -n output?


I think this probably has something to do with the fact that my  
namespaces were broken after I upgraded.  These namespaces were broken  
because doveconf didn't import my dovecot v1 config correctly.


With this input:

-

namespace private {
  separator = .
  prefix =
  location = maildir:~/Maildir
  inbox = yes
}

namespace public {
  separator = .
  prefix = "#shared."
  location = maildir:~/mboxtesting
}

-

And running: doveconf -n -c dovecot-1.conf > dovecot-2.conf
(as found at http://wiki2.dovecot.org/Upgrading/2.0)

Results in the following:

--

# 2.0.1: dovecot-1.conf
# OS: Linux 2.6.35-ARCH x86_64
namespace {
  location = maildir:~/mboxtesting
  prefix = #shared.
  separator = .
  type = public
}

namespace {
  location = maildir:~/mboxtesting
  prefix = #shared.
  separator = .
  type = public
}

-

And, thus, both namespaces have the same prefix:

* NAMESPACE (("" ".")) NIL (("" "."))

So doveconf wasn't quoting the prefix value correctly in the converted  
output.  Not sure if you want to put a check/warning somewhere if  
namespaces have the same prefixes.


michael



Re: [Dovecot] Segfault on dovecot 2.0.1 w/ACLs

2010-09-01 Thread Timo Sirainen
On Tue, 2010-08-31 at 23:17 -0600, Michael M. Slusarz wrote:
> 5 LIST (SUBSCRIBED) "" (*) RETURN (SUBSCRIBED)
> * LIST (\Subscribed) "." "INBOX"
> [...]
> * LIST (\Subscribed) "." "Mileage Plus"
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x76d0cd61 in ?? () from /usr/lib/dovecot/modules/lib01_acl_plugin.so
> (gdb) bt full
> #0  0x76d0cd61 in ?? ()
> from /usr/lib/dovecot/modules/lib01_acl_plugin.so
> No symbol table info available.

I couldn't reproduce this. I guess it requires some specific config. Can
you get bt with debug symbols and/or give full doveconf -n output?



[Dovecot] Segfault on dovecot 2.0.1 w/ACLs

2010-08-31 Thread Michael M. Slusarz
* PREAUTH [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID  
ENABLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND  
UNSELECT IDLE CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1  
CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH  
LIST-STATUS ACL RIGHTS=texk] Logged in as slusarz

5 LIST (SUBSCRIBED) "" (*) RETURN (SUBSCRIBED)
* LIST (\Subscribed) "." "INBOX"
[...]
* LIST (\Subscribed) "." "Mileage Plus"

Program received signal SIGSEGV, Segmentation fault.
0x76d0cd61 in ?? () from /usr/lib/dovecot/modules/lib01_acl_plugin.so
(gdb) bt full
#0  0x76d0cd61 in ?? ()
   from /usr/lib/dovecot/modules/lib01_acl_plugin.so
No symbol table info available.
#1  0x77b40eea in mailbox_list_iter_next ()
   from /usr/lib/dovecot/libdovecot-storage.so.0
No symbol table info available.
#2  0x0040b209 in ?? ()
No symbol table info available.
#3  0x0040c030 in cmd_list_full ()
No symbol table info available.
#4  0x0040f9dd in ?? ()
No symbol table info available.
#5  0x0040fab2 in ?? ()
No symbol table info available.
#6  0x0040fcfd in client_handle_input ()
No symbol table info available.
#7  0x0041059f in client_input ()
No symbol table info available.
#8  0x778d8e85 in io_loop_handler_run ()
   from /usr/lib/dovecot/libdovecot.so.0
No symbol table info available.
#9  0x778d80f8 in io_loop_run () from /usr/lib/dovecot/libdovecot.so.0
No symbol table info available.
#10 0x778c76f3 in master_service_run ()
   from /usr/lib/dovecot/libdovecot.so.0
No symbol table info available.
#11 0x00418791 in main ()
No symbol table info available.


# 2.0.1: /etc/dovecot/dovecot.conf
# OS: Linux 2.6.35-ARCH x86_64
plugin {
  acl = vfile
  quota = maildir:User quota
  quota_rule = *:storage=10485769
}


Can verify that disabling acl makes the segfault go away.

michael