Hello,
since few days there are problems with the userdb lookup.
The problem occur if the recipient user is unknown (here test at xtlv.cn)
doveconf -n
# 2.2.6 (f89e645cba90): /etc/dovecot/dovecot.conf
# OS: Linux 3.2.45.stk32 i686 Debian jessie/sid ext3
auth_debug = yes
auth_debug_passwords = yes
auth_mechanisms = digest-md5 cram-md5
auth_username_translation = %Lu
auth_verbose = yes
auth_verbose_passwords = plain
debug_log_path = /var/log/dovecot/dov_debug.log
hostname = kyoto.vtlx.cn
login_log_format_elements = user=<%u> method=%m rip=%r lip=%l mpid=%e %c
%k
mail_debug = yes
mail_gid = vmail
mail_home = /var/mail/vhosts/%Ld/%Ln
mail_location = sdbox:/var/mail/vhosts/%Ld/%Ln:DIRNAME=DbOx-mAiLs
mail_plugins = " quota mail_log notify expire zlib"
mail_privileged_group = vmail
mail_uid = vmail
mailbox_list_index = yes
...
passdb {
args = scheme=PLAIN username_format=%Lu /etc/dovecot/user_pw/passwd
driver = passwd-file
}
postmaster_address = postmaster at xtlv.cn
protocols = " imap lmtp sieve pop3"
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
mode = 0660
user = postfix
}
unix_listener auth-userdb {
mode = 0600
user = vmail
}
}
service config {
unix_listener config {
mode = 0600
user = vmail
}
}
service dict {
unix_listener dict {
mode = 0600
user = vmail
}
}
service imap-login {
inet_listener imap {
port = 0
}
inet_listener imaps {
address = 84.38.75.44
port = 993
ssl = yes
}
}
service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp {
group = postfix
mode = 0660
user = postfix
}
}
service managesieve-login {
inet_listener sieve {
address = 84.38.75.44
port = 4190
}
}
service pop3-login {
inet_listener pop3 {
port = 0
}
inet_listener pop3s {
address = 84.38.75.44
port = 995
ssl = yes
}
}
service quota-status {
client_limit = 1
executable = quota-status -p postfix
unix_listener /var/spool/postfix/private/quota-status {
group = postfix
mode = 0660
user = postfix
}
}
...
userdb {
args = username_format=%Lu /etc/dovecot/user_pw/passwd
driver = passwd-file
}
...
> gdb /usr/lib/dovecot/auth core_dbg
GNU gdb (GDB) 7.6 (Debian 7.6-5)
Copyright (C) 2013 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 "i486-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/lib/dovecot/auth...Reading symbols from
/usr/lib/debug/usr/lib/dovecot/auth...done.
done.
[New LWP 26466]
warning: Could not load shared library symbols for linux-gate.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library
"/lib/i386-linux-gnu/i686/cmov/libthread_db.so.1".
Core was generated by `dovecot/auth'.
Program terminated with signal 6, Aborted.
#0 0xb779d424 in __kernel_vsyscall ()
(gdb) bt full
#0 0xb779d424 in __kernel_vsyscall ()
No symbol table info available.
#1 0xb74ec80f in __GI_raise (sig=sig at entry=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:56
resultvar = <optimized out>
resultvar = <optimized out>
pid = -1218015232
selftid = 26466
#2 0xb74efcc3 in __GI_abort () at abort.c:90
save_stage = 2
act = {__sigaction_handler = {sa_handler = 0xb7794ff4, sa_sigaction
0xb7794ff4}, sa_mask = {__val = {0, 3077744103, 3216056844, 3078348800,
3078207408, 1, 3078184664, 3078275225, 3078207848, 3077070192,
1, 1, 0, 0, 159279448, 3077360220, 3077743598, 3078180852,
3075085960, 3077367868, 159354316, 3077744683, 3078186032, 3075227880,
3216056948, 3077897967, 0, 3078180852, 0, 0, 159354316, 3078300704}},
sa_flags = 1, sa_restorer = 0xb74efb80 <__GI_abort>}
sigs = {__val = {32, 0 <repeats 31 times>}}
#3 0xb772abf9 in default_fatal_finish (type=<optimized out>,
status=status at entry=0) at failures.c:192
backtrace = 0x97e6978 "/usr/lib/dovecot/libdovecot.so.0(+0x67bcf)
[0xb772abcf] -> /usr/lib/dovecot/libdovecot.so.0(+0x67c51) [0xb772ac51] ->
/usr/lib/dovecot/libdovecot.so.0(i_fatal+0) [0xb76de1d6] ->
/usr/lib/dovecot/libdo"...
#4 0xb772ac51 in i_internal_fatal_handler (ctx=0xbfb122e4, format=0xb7757344
"file %s: line %d (%s): assertion failed: (%s)", args=0xbfb12304
"") at
failures.c:653
status = 0
#5 0xb76de1d6 in i_panic (format=format at entry=0xb7757344 "file %s: line
%d
(%s): assertion failed: (%s)") at failures.c:264
ctx = {type = LOG_TYPE_PANIC, exit_status = 0, timestamp = 0x0}
args = 0xbfb12304 ""
#6 0xb7751886 in p_strndup (pool=0xb7796544
<static_unsafe_data_stack_pool>,
str=str at entry=0x0, max_chars=max_chars at entry=4294967295) at strfuncs.c:74
mem = <optimized out>
len = <optimized out>
__FUNCTION__ = "p_strndup"
#7 0xb7751d7f in t_strndup (str=0x0, max_chars=4294967295) at strfuncs.c:236
No locals.
#8 0x08057003 in auth_request_append_password (str=str at entry=0x97e68a8,
request=0x97f8da8, request=0x97f8da8) at auth-request.c:1799
p = <optimized out>
log_type = <optimized out>
max_len = 4294967295
#9 0x08058cf2 in auth_request_log_unknown_user
(request=request at entry=0x97f8da8, subsystem=subsystem at entry=0x807a0cc
"passwd-file") at auth-request.c:1846
str = 0x97e68a8
#10 0x0806268c in db_passwd_file_lookup (db=0x97f4430,
request=request at entry=0x97f8da8, username_format=0x97ef148 "%Lu")
at
db-passwd-file.c:466
pw = 0x97f4470
pu = <optimized out>
table = <optimized out>
username = 0x97e6598
dest = <optimized out>
#11 0x0806d8bf in passwd_file_lookup (auth_request=0x97f8da8,
callback=0x80599b0 <auth_request_userdb_callback>) at
userdb-passwd-file.c:45
_module = <optimized out>
module = <optimized out>
pu = <optimized out>
table = <optimized out>
str = <optimized out>
key = <optimized out>
value = <optimized out>
p = <optimized out>
#12 0x08059c94 in auth_request_lookup_user (request=0x97f8da8,
callback=callback at entry=0x8054ce0 <user_callback>) at
auth-request.c:1072
userdb = 0x97ef150
cache_key = <optimized out>
#13 0x08055612 in master_input_user (args=0x97f8751
"7\ttest at xtlv.cn\tservice=quota-status", conn=0x97f8b48) at
auth-master-connection.c:314
auth_request = 0x97f8da8
error = 0xbfb125ac "\244\325s\267H\213\177\t"
ret = <optimized out>
--
???????