[Dovecot] qmail and LDA: passdb didn't return userdb entries

Alessio Cecchi alessio at skye.it
Wed Dec 3 10:33:19 EET 2008


Il Tuesday 02 December 2008 18:14:23 Timo Sirainen ha scritto:
> On Tue, 2008-12-02 at 15:35 +0100, Alessio Cecchi wrote:
> >   passdb:
> >     driver: checkpassword
> >     args: /home/vpopmail/bin/vchkpw
> >   userdb:
> >     driver: prefetch
> >     args: uid=89 gid=89 home=/home/vpopmail/domains/%d/%u
>
> The args for prefetch userdb don't do anything. Prefetch only returns
> what the passdb had already looked up. This doesn't work with deliver,
> which doesn't authenticate but instead just wants to do a userdb lookup.
> Since there's no userdb, it returns the "passdb didn't return userdb
> entries" error. That's actually a bad error message, I fixed it now to
> give "userdb lookup not possible with only userdb prefetch".
>
> So, what to do about it? I guess you could change userdb prefetch to
> userdb static. It looks like you already have its parameters set up.
> You'll also need to add allow_all_users=yes parameter and make sure your
> MTA rejects invalid users.

Hi Timo,

thanks for your reply, in effect if I modify my "userdb prefetch" simple to 
this, without any "args":

userdb prefetch {
}

authentication works always fine.

But if I change userdb to this (with or without args):

userdb static {
args = uid=89 gid=89  home=/home/vpopmail/domains/%d/%n
}

autentication works but home location isn't set correctoly, so I can login 
into the webmail but there isn't any messages:

dovecot: Dec 03 09:10:49 Info: imap-login: Login: user=<test>, method=PLAIN, 
rip=127.0.0.1, lip=127.0.0.1, secured
dovecot: Dec 03 09:10:49 Info: IMAP(test): Loading modules from 
directory: /usr/lib/dovecot/imap
dovecot: Dec 03 09:10:49 Info: IMAP(test): Module 
loaded: /usr/lib/dovecot/imap/lib10_quota_plugin.so
dovecot: Dec 03 09:10:49 Info: IMAP(test): Module 
loaded: /usr/lib/dovecot/imap/lib11_imap_quota_plugin.so
dovecot: Dec 03 09:10:49 Info: IMAP(test): Effective uid=89, gid=89, 
home=/home/vpopmail/domains//test
dovecot: Dec 03 09:10:49 Info: IMAP(test): Quota root: name= backend=maildir 
args=
dovecot: Dec 03 09:10:49 Info: IMAP(test): Namespace: type=private, 
prefix=INBOX., sep=., inbox=yes, hidden=no, list=yes, sub
scriptions=yes
dovecot: Dec 03 09:10:49 Info: IMAP(test): maildir: data=~/Maildir
dovecot: Dec 03 09:10:49 Info: IMAP(test): maildir++: 
root=/home/vpopmail/domains//test/Maildir, index=, control=, inbox=/home
/vpopmail/domains//test/Maildir
dovecot: Dec 03 09:10:49 Info: IMAP(test): Disconnected: Logged out 
bytes=117/931

As you can see in "root=/home/vpopmail/domains//test/Maildir" after 
domains//test/Maildir there isn't domain name.

Normaly for this user (with userdb prefetch) home location is:

dovecot: Dec 03 09:11:16 Info: IMAP(test): Effective uid=89, gid=89, 
home=/home/vpopmail/domains/domain.com/0/test

I think that before I can set "allow_all_users=yes" I need to resolving this 
problem :-)

Thanks
-- 
Alessio Cecchi is:
@ ILS -> http://www.linux.it/~alessice/
on LinkedIn -> http://www.linkedin.com/in/alessice
Assistenza Sistemi GNU/Linux -> http://www.cecchi.biz/
@ PLUG -> ex-Presidente, adesso senatore a vita, http://www.prato.linux.it
@ LOLUG -> Socio http://www.lolug.net


More information about the dovecot mailing list