segfault in lib20_expire_plugin
Mario Arnold
listserv at xtlv.cn
Tue Feb 21 16:04:13 UTC 2017
Hello,
after upgrade from [2.2.devel (34f7cc3)] to [2.2.devel (b3443fc)] dovecot
stops with a segfault:
Fatal: master: service(imap): child 21179 killed with signal 11 (core dumped)
imap[21179]: segfault at 0 ip 00000000f726eef1 sp 00000000ffa3b050 error 4 in
lib20_expire_plugin.so[f726d000+3000]
gdb /usr/lib/dovecot/imap /var/_core/core_imap-11-5000-5000-21179
GNU gdb (Debian 7.12-6) 7.12.0.20161007-git
Reading symbols from /usr/lib/dovecot/imap...Reading symbols from
/usr/lib/debug/.build-id/99/6f1cf1a262cf5738f075ec046d9a7d344d9693.debug...done.
done.
[New LWP 21179]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
Core was generated by `dovecot/imap imap-postlogin'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 expire_mail_namespaces_created (ns=0xf814db90) at expire-plugin.c:428
428 expire-plugin.c: Datei oder Verzeichnis nicht gefunden.
(gdb) bt full
#0 expire_mail_namespaces_created (ns=0xf814db90) at expire-plugin.c:428
user = 0xf814d028
v = 0x0
db = 0xf815b960
error = 0xf81522c0 "Trash"
#1 0xf75f9b21 in hook_mail_namespaces_created (namespaces=0xf8151008) at
mail-storage-hooks.c:304
_data_stack_cur_id = 4
hooks__foreach_end = 0xf814dae8
hooks = 0xf814dad4
#2 0xf75ebf9f in mail_namespaces_init_finish (namespaces=0xf8151008,
error_r=0xffa3b23c) at mail-namespace.c:383
_data_stack_cur_id = 3
ns = 0x0
prefixless_found = false
__FUNCTION__ = "mail_namespaces_init_finish"
#3 0xf75ec1bb in mail_namespaces_init (user=0xf814d028, error_r=0xffa3b23c)
at mail-namespace.c:438
mail_set = 0xf814d118
ns_set = <optimized out>
unexpanded_ns_set = <optimized out>
namespaces = 0xf8151008
ns_p = <optimized out>
i = <optimized out>
count = <optimized out>
count2 = <optimized out>
__FUNCTION__ = "mail_namespaces_init"
#4 0xf75fcd30 in mail_storage_service_init_post (ctx=<optimized out>,
error_r=<optimized out>, mail_user_r=<optimized out>, priv=<optimized out>,
user=<optimized out>) at mail-storage-service.c:728
mail_set = 0xf814d118
mail_user = 0xf814d028
#5 mail_storage_service_next_real (mail_user_r=<optimized out>,
user=<optimized out>, ctx=<optimized out>) at mail-storage-service.c:1426
len = 4162116496
priv = {uid = 5000, gid = 5000, uid_source = 0xf76afeb4 "userdb
lookup", gid_source = 0xf76afeb4 "userdb lookup", home = 0xf813ea71
"/srv/vmail/xtlv.de/1000", chroot = 0xf8130a20 ""}
error = 0xf75b9934 "4\210\024"
#6 mail_storage_service_next (ctx=0xf814d118, user=0xf813da90,
mail_user_r=0xffa3b304) at mail-storage-service.c:1444
No locals.
#7 0xf75fd0ff in mail_storage_service_lookup_next (ctx=0xf81399b0,
input=0xffa3b368, user_r=0xffa3b300, mail_user_r=0xffa3b304,
error_r=0xffa3b360) at mail-storage-service.c:1477
user = 0xf813da90
ret = <optimized out>
#8 0xf77832c9 in client_create_from_input (input=0xffa3b368, fd_in=15,
fd_out=15, client_r=0xffa3b35c, error_r=0xffa3b360) at main.c:228
user = 0x81a4
mail_user = 0xc34a5
ns = 0xf814d000
client = 0xffa3b304
imap_set = 0xffa3b360
lda_set = 0xffa3b304
errstr = 0xf814db90 ""
mail_error = 49663
#9 0xf77834ea in login_client_connected (login_client=0xf813b450,
username=0xf81300c8 "1000 at xtlv.de", extra_fields=0xf81300ac) at main.c:316
input = {module = 0xf778b616 "imap", service = 0xf778b616 "imap",
username = 0xf81300c8 "1000 at xtlv.de", session_id = 0xf813b4c0
"doleKgxJ3s8l6zee", session_id_prefix = 0x0, session_create_time = 0, local_ip = {
family = 2, u = {ip6 = {__in6_u = {__u6_addr8 = "T&K\217", '\000'
<repeats 11 times>, __u6_addr16 = {9812, 36683, 0, 0, 0, 0, 0, 0}, __u6_addr32
= {2404066900, 0, 0, 0}}}, ip4 = {s_addr = 2404066900}}}, remote_ip = {
family = 2, u = {ip6 = {__in6_u = {__u6_addr8 = "%\353\067\236",
'\000' <repeats 11 times>, __u6_addr16 = {60197, 40503, 0, 0, 0, 0, 0, 0},
__u6_addr32 = {2654464805, 0, 0, 0}}}, ip4 = {s_addr = 2654464805}}},
local_port = 0, remote_port = 0, userdb_fields = 0xf81300ac,
flags_override_add = (unknown: 0), flags_override_remove = (unknown: 0),
no_userdb_lookup = 0, debug = 0}
client = 0xf750331c <t_malloc0+44>
flags = <optimized out>
error = 0xf8130130 "auth_token=3763fd48bfdfeea2a3617cbda148915c19e125fa"
__FUNCTION__ = "login_client_connected"
#10 0xf749b0d1 in master_login_auth_finish (client=0xf813b450,
auth_args=0xf814d000, auth_args at entry=0xf81300a8) at master-login.c:210
login = 0xf813ab88
service = 0xf81383e8
__FUNCTION__ = "master_login_auth_finish"
#11 0xf749b6a9 in master_login_postlogin_input (pl=0xf813d720) at
master-login.c:284
login = 0xf813ab88
buf =
"1000 at xtlv.de\tquota_rule=*:storage=5M\tuid=5000\tgid=5000\thome=/srv/vmail/xtlv.de/1000\tauth_token=3763fd48bfdfeea2a3617cbda148915c19e125fa\nQ\345td",
'\000' <repeats 20 times>,
"\006\000\000\000\020\000\000\000R\345td\260.\000\000\260>\000\000\260>\000\000P\001\000\000P\001\000\000\004\000\000\000\001\000\000\000"...
auth_args = 0xf81300a8
p = 0xf81300c0
ret = -1
fd = -1
---Type <return> to continue, or q <return> to quit---
#12 0xf751b73e in io_loop_call_io (io=0xf813b358) at ioloop.c:599
ioloop = 0xf81384b8
t_id = 2
__FUNCTION__ = "io_loop_call_io"
#13 0xf751cece in io_loop_handler_run_internal (ioloop=0xf81384b8) at
ioloop-epoll.c:223
ctx = 0xf813a210
list = 0xf813b390
io = <optimized out>
tv = {tv_sec = 59, tv_usec = 999219}
events_count = <optimized out>
msecs = <optimized out>
ret = 1
i = <optimized out>
j = 0
call = <optimized out>
__FUNCTION__ = "io_loop_handler_run_internal"
#14 0xf751b7ef in io_loop_handler_run (ioloop=0xf81384b8) at ioloop.c:648
No locals.
#15 0xf751b999 in io_loop_run (ioloop=0xf81384b8) at ioloop.c:623
__FUNCTION__ = "io_loop_run"
#16 0xf749d985 in master_service_run (service=0xf81383e8, callback=0xf7782b60
<client_connected>) at master-service.c:641
No locals.
#17 0xf7766ece in main (argc=2, argv=0xffa3bab4) at main.c:460
set_roots = {0xf779d2a0 <imap_setting_parser_info>, 0xf7732ac0
<lda_setting_parser_info>, 0x0}
login_set = {auth_socket_path = 0xf8130030 "ta_rule=*:storage=5M",
postlogin_socket_path = 0xf8130060 "/vmail/xtlv.de/1000",
postlogin_timeout_secs = 60, callback = 0xf7783430 <login_client_connected>,
failure_callback = 0xf7782cc0 <login_client_failed>,
request_auth_token = 1}
service_flags = <optimized out>
storage_service_flags = <optimized out>
username = <optimized out>
auth_socket_path = <optimized out>
c = <optimized out>
doveconf -n
# 2.2.devel (b3443fc): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.4.devel (0d78a30)
# OS: Linux 3.2.64.stk32 x86_64 Debian 9.0
auth_debug = yes
auth_debug_passwords = yes
auth_failure_delay = 5 secs
auth_master_user_separator = *
auth_mechanisms = digest-md5 cram-md5
auth_verbose = yes
auth_verbose_passwords = plain
debug_log_path = /var/log/dovecot/dov_debug.log
deliver_log_format = msgid=%m: %$: DeliveryTime=%{delivery_time}:
LMTPSessionTime=%{session_time}
dict {
expire = db:/var/lib/dovecot/expire.db
}
doveadm_password = # hidden, use -P to show it
doveadm_port = 1090
imap_logout_format = in=%i out=%o MailHeaderR=%{fetch_hdr_count}
MailBodyR=%{fetch_body_count} MailDel=%{deleted} MailExpung=%{expunged}
MailTrash=%{trashed}
lmtp_rcpt_check_quota = yes
login_log_format_elements = user=<%u> method=%m rip=%r lip=%l mpid=%e %c %k
mail_debug = yes
mail_gid = vmail
mail_location = sdbox:%h/sdbox
mail_plugins = " quota mail_log notify expire zlib acl notify replication"
mail_privileged_group = vmail
mail_uid = vmail
mailbox_list_index = yes
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope encoded-character
vacation subaddress comparator-i;ascii-numeric relational regex imap4flags
copy include variables body enotify environment mailbox date index ihave
duplicate mime foreverypart extracttext
namespace {
ignore_on_failure = no
inbox = no
list = children
location = sdbox:%%h/sdbox
prefix = shared/%%u/
separator = /
subscriptions = yes
type = shared
}
namespace inbox {
hidden = no
ignore_on_failure = no
inbox = yes
list = yes
location =
mailbox Drafts {
auto = subscribe
special_use = \Drafts
}
mailbox Sent {
auto = subscribe
special_use = \Sent
}
mailbox Trash {
auto = subscribe
special_use = \Trash
}
prefix =
separator = /
subscriptions = yes
type = private
}
passdb {
args = scheme=PLAIN username_format=%Lu /etc/dovecot/user_pw/passwd
driver = passwd-file
}
plugin {
acl = vfile
acl_shared_dict = file:/srv/vmail/shared-db/shared-mailboxes
expire = Trash 2h
expire_cache = yes
expire_dict = proxy::expire
mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename
save mailbox_create
mail_log_fields = uid box msgid size subject
mail_replica = tcps:mx00.vtlx.cn
quota = dict:User quota::file:%h/dovecot-quota
quota_exceeded_message = Die Mailbox des Empfaengers ist voll -- Quota
exceeded -- Please contact <postmaster at xtlv.cn>
quota_grace = 12%%
quota_rule = *:storage=350M
quota_rule2 = Trash:storage=+15%%
quota_status_nouser = DUNNO
quota_status_overquota = "552 5.5.2 Die Mailbox des Empfaengers ist voll ##
Mailbox is full ## Please contact <postmaster at xtlv.cn>"
quota_status_success = DUNNO
quota_warning = storage=95%% quota-warning 95 %u
quota_warning2 = storage=90%% quota-warning 90 %u
quota_warning3 = storage=80%% quota-warning 80 %u
quota_warning4 = storage=70%% quota-warning 70 %u
sieve = file:~/sieve;active=~/.dovecot.sieve
zlib_save = gz
zlib_save_level = 6
}
pop3_logout_format = top=%t/%p, retr=%r/%b, del=%d/%m/%{deleted_bytes}, size=%s
postmaster_address = postmaster at xtlv.cn
protocols = " imap lmtp sieve pop3"
service aggregator {
fifo_listener replication-notify-fifo {
mode = 0660
user = vmail
}
unix_listener replication-notify {
mode = 0660
user = vmail
}
}
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
mode = 0660
user = postfix
}
unix_listener auth-userdb {
group = vmail
mode = 0600
user = vmail
}
}
service config {
unix_listener config {
mode = 0600
user = vmail
}
}
service dict {
unix_listener dict {
group = vmail
mode = 0600
user = vmail
}
}
service doveadm {
inet_listener {
address = 84.38.75.143, 2a00:5080:1:16::8
port = 1090
ssl = yes
}
}
service imap-login {
inet_listener imap {
port = 0
}
inet_listener imaps {
address = 84.38.75.143
port = 993
ssl = yes
}
}
service imap-postlogin {
executable = script-login -d /usr/local/sbin/dov-last-login-imap.sh
user = $default_internal_user
}
service imap {
executable = imap imap-postlogin
}
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.143
port = 4190
}
}
service pop3-login {
inet_listener pop3 {
port = 0
}
inet_listener pop3s {
address = 84.38.75.143
port = 995
ssl = yes
}
}
service pop3-postlogin {
executable = script-login -d /usr/local/sbin/dov-last-login-pop3.sh
user = $default_internal_user
}
service pop3 {
executable = pop3 pop3-postlogin
}
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
}
}
service quota-warning {
executable = script /usr/local/bin/quota-warning.sh
unix_listener quota-warning {
group = vmail
mode = 0660
user = vmail
}
user = root
}
service replicator {
process_min_avail = 1
unix_listener replicator-doveadm {
mode = 0600
user = vmail
}
}
ssl = required
ssl_ca = </etc/dovecot/certs/sub.class2.server.ca.pem
ssl_cert = </etc/dovecot/keys/vtlx.cn-wc-2015.crt
ssl_cipher_list =
ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:DHE-RSA-AES256-SHA:!RC4:!aNULL:!eNULL:!LOW:!EXPORT:!DES:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!NULL:!DH:!EDH:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
ssl_client_ca_file = /etc/dovecot/certs/ca-bundle-2016.pem
ssl_dh_parameters_length = 2048
ssl_key = # hidden, use -P to show it
ssl_parameters_regenerate = 1 weeks
ssl_prefer_server_ciphers = yes
ssl_protocols = !SSLv2 !SSLv3
ssl_verify_client_cert = yes
userdb {
args = username_format=%Lu /etc/dovecot/user_pw/passwd
driver = passwd-file
}
protocol lmtp {
mail_plugins = " quota mail_log notify expire zlib acl notify replication
quota sieve"
}
protocol imap {
mail_max_userip_connections = 12
mail_plugins = " quota mail_log notify expire zlib acl notify replication
imap_quota imap_zlib imap_acl"
}
protocol pop3 {
mail_plugins = " quota mail_log notify expire zlib acl notify replication quota"
}
--
Persönlich IS0-Zertifiziert in angewandter Kompetenzsimulation.
More information about the dovecot
mailing list