dovecot --version 2.2.21 (5345f22)
FreeBSD 10.2-RELEASE-p10 FreeBSD 10.2-RELEASE-p10 #0 r294322M:
having repeated core dumps on imap process… autoexpunge issue?
GNU gdb 6.1.1 [FreeBSD] Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "amd64-marcel-freebsd"... Core was generated by `imap'. Program terminated with signal 11, Segmentation fault. Reading symbols from /usr/local/lib/dovecot/libdovecot-storage.so.0...done. Loaded symbols for /usr/local/lib/dovecot/libdovecot-storage.so.0 Reading symbols from /usr/local/lib/dovecot/libdovecot.so.0...done. Loaded symbols for /usr/local/lib/dovecot/libdovecot.so.0 Reading symbols from /lib/libc.so.7...done. Loaded symbols for /lib/libc.so.7 Reading symbols from /usr/local/lib/dovecot/lib10_quota_plugin.so...done. Loaded symbols for /usr/local/lib/dovecot/lib10_quota_plugin.so Reading symbols from /usr/local/lib/dovecot/lib11_imap_quota_plugin.so...done. Loaded symbols for /usr/local/lib/dovecot/lib11_imap_quota_plugin.so Reading symbols from /usr/local/lib/dovecot/lib20_zlib_plugin.so...done. Loaded symbols for /usr/local/lib/dovecot/lib20_zlib_plugin.so Reading symbols from /lib/libz.so.6...done. Loaded symbols for /lib/libz.so.6 Reading symbols from /usr/lib/libbz2.so.4...done. Loaded symbols for /usr/lib/libbz2.so.4 Reading symbols from /usr/lib/liblzma.so.5...done. Loaded symbols for /usr/lib/liblzma.so.5 Reading symbols from /libexec/ld-elf.so.1...done. Loaded symbols for /libexec/ld-elf.so.1 #0 0x0000000010cf9730 in o_stream_get_buffer_used_size (stream=0x0) at ostream.c:198 198 ostream.c: No such file or directory. in ostream.c
(gdb) bt full
#0 0x0000000010cf9730 in o_stream_get_buffer_used_size (stream=0x0) at ostream.c:198
_stream = (const struct ostream_private *) 0xd
#1 0x0000000000435ac9 in notify_ok (mailbox=0x118e1c40, text=0x118063a8 "Stale mailbox lock file detected, will override in 0 seconds", context=0x11845840) at mail-storage-callbacks.c:13
client = (struct client *) 0x11845840
#2 0x000000001096f4e4 in index_storage_lock_notify (box=0x118e1c40, notify_type=MAILBOX_LOCK_NOTIFY_MAILBOX_OVERRIDE, secs_left=0) at index-storage.c:137
ibox = (struct index_mailbox_context *) 0x118e20b0
storage = (struct mail_storage *) 0x11873640
str = 0x118063a8 "Stale mailbox lock file detected, will override in 0 seconds"
now = 1453427588
#3 0x00000000108fbedd in dotlock_callback (secs_left=0, stale=true, context=0x118e1c40) at maildir-uidlist.c:250
box = (struct mailbox *) 0x118e1c40
#4 0x0000000010ccba7c in dotlock_create (dotlock=0x118a8140, flags=DOTLOCK_CREATE_FLAG_NONBLOCK, write_pid=true, lock_path_r=0x7fffffffe4e0) at file-dotlock.c:549
secs_left = 0
set = (const struct dotlock_settings *) 0x118a8140
lock_path = 0x11806220 "/var/mail/mbox1/0/2/Maildir/.Junk/dovecot-uidlist.lock"
lock_info = {set = 0x118a8140, path = 0x118b59c0 "/var/mail/mbox1/0/2/Maildir/.Junk/dovecot-uidlist", lock_path = 0x11806220 "/var/mail/mbox1/0/2/Maildir/.Junk/dovecot-uidlist.lock", temp_path = 0x0, fd = -1, lock_info = {dev = 0, ino = 0, size = 0, ctime = 0, mtime = 0}, file_info = {dev = 0,
ino = 0, size = 0, ctime = 0, mtime = 0}, last_pid_check = 0, last_change = 0, wait_usecs = 0, have_pid = 0, pid_read = 0, use_io_notify = 1, lock_stated = 1}
st = {st_dev = 1, st_ino = 32767, st_mode = 0, st_nlink = 0, st_uid = 0, st_gid = 0, st_rdev = 0, st_atim = {tv_sec = 140737488348216, tv_nsec = 140737488347840}, st_mtim = {tv_sec = 12884901898, tv_nsec = 140737488348320}, st_ctim = {tv_sec = 167, tv_nsec = 0}, st_size = 275162112,
st_blocks = 140737488348192, st_blksize = 275046283, st_flags = 0, st_gen = 4294960312, st_lspare = 32767, st_birthtim = {tv_sec = 140737488348216, tv_nsec = 277283844}}
stale_notify_threshold = 60
change_secs = 1453427588
wait_left = 2841539708
now = 1453427588
max_wait_time = 0
last_notify = 1453427588
prev_last_change = 0
prev_wait_update = 0
tmp_path = (string_t *) 0x11806270
ret = 0
do_wait = false
#5 0x0000000010ccaf87 in file_dotlock_create_real (dotlock=0x118a8140, flags=DOTLOCK_CREATE_FLAG_NONBLOCK) at file-dotlock.c:629
lock_path = 0x11806220 "/var/mail/mbox1/0/2/Maildir/.Junk/dovecot-uidlist.lock"
st = {st_dev = 284562744, st_ino = 0, st_mode = 58544, st_nlink = 65535, st_uid = 32767, st_gid = 282105456, st_rdev = 0, st_atim = {tv_sec = 140737488290687, tv_nsec = 50}, st_mtim = {tv_sec = 294345152, tv_nsec = 293746112}, st_ctim = {tv_sec = 284562744, tv_nsec = 294345152},
st_size = 140737488348368, st_blocks = 281883903, st_blksize = 96, st_flags = 0, st_gen = 293746112, st_lspare = 0, st_birthtim = {tv_sec = 140737488348416, tv_nsec = 281819373}}
fd = 0
ret = 50
#6 0x0000000010ccae76 in file_dotlock_create (set=0x118dd138, path=0x118235c0 "/var/mail/mbox1/0/2/Maildir/.Junk/dovecot-uidlist", flags=DOTLOCK_CREATE_FLAG_NONBLOCK, dotlock_r=0x118dd168) at file-dotlock.c:673
_data_stack_cur_id = 5
dotlock = (struct dotlock *) 0x118a8140
ret = 0
#7 0x00000000108fb891 in maildir_uidlist_lock_timeout (uidlist=0x118dd100, nonblock=true, refresh=true, refresh_when_locked=true) at maildir-uidlist.c:160
box = (struct mailbox *) 0x118e1c40
perm = (const struct mailbox_permissions *) 0x118e1e10
path = 0x118235c0 "/var/mail/mbox1/0/2/Maildir/.Junk/dovecot-uidlist"
old_mask = 63
dotlock_flags = DOTLOCK_CREATE_FLAG_NONBLOCK
i = 0
---Type <return> to continue, or q <return> to quit---
ret = -5216
#8 0x00000000108fe066 in maildir_uidlist_sync_lock (uidlist=0x118dd100, sync_flags=MAILDIR_UIDLIST_SYNC_TRYLOCK, locked_r=0x7fffffffe617) at maildir-uidlist.c:1608
nonblock = true
refresh = true
ret = -5184
#9 0x00000000108fdd86 in maildir_uidlist_sync_init (uidlist=0x118dd100, sync_flags=MAILDIR_UIDLIST_SYNC_TRYLOCK, sync_ctx_r=0x118061b8) at maildir-uidlist.c:1638
ctx = (struct maildir_uidlist_sync_ctx *) 0x118061b8
locked = false
ret = 4
#10 0x00000000108fa021 in maildir_sync_context (ctx=0x11806188, forced=false, find_uid=0x0, lost_files_r=0x7fffffffe71f) at maildir-sync.c:871
sync_flags = MAILDIR_UIDLIST_SYNC_TRYLOCK
flags = 4294960816
new_changed = true
cur_changed = true
lock_failure = false
fname = 0x7fffffffe5a0 "àåÿÿÿ\177"
why = 36
ret = 1
#11 0x00000000108f9400 in maildir_sync_run (mbox=0x118e1c40, flags=68, force_resync=false, uid=0x0, lost_files_r=0x7fffffffe71f) at maildir-sync.c:1023
_data_stack_cur_id = 4
ctx = (struct maildir_sync_context *) 0x11806188
retry = false
lost_files = false
ret = 294526016
#12 0x00000000108f96b0 in maildir_storage_sync_init (box=0x118e1c40, flags=68) at maildir-sync.c:1096
mbox = (struct maildir_mailbox *) 0x118e1c40
lost_files = false
force_resync = false
ret = 0
#13 0x00000000108b75b9 in mailbox_sync_init (box=0x118e1c40, flags=68) at mail-storage.c:1657
_data_stack_cur_id = 3
ctx = (struct mailbox_sync_context *) 0xc
#14 0x00000000108b6891 in mailbox_sync (box=0x118e1c40, flags=68) at mail-storage.c:1705
ctx = (struct mailbox_sync_context *) 0x206
status = {sync_delayed_expunges = 1}
#15 0x00000000108a6e65 in mailbox_autoexpunge (box=0x118e1c40, expire_time=1450835588) at mail-autoexpunge.c:29
t = (struct mailbox_transaction_context *) 0x11873640
mail = (struct mail *) 0x118e1c40
metadata = {guid = '\0'
For comparison crash on another server, similar:
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "amd64-marcel-freebsd"...
Core was generated by imap'. Program terminated with signal 11, Segmentation fault. Reading symbols from /usr/local/lib/dovecot/libdovecot-storage.so.0...done. Loaded symbols for /usr/local/lib/dovecot/libdovecot-storage.so.0 Reading symbols from /usr/local/lib/dovecot/libdovecot.so.0...done. Loaded symbols for /usr/local/lib/dovecot/libdovecot.so.0 Reading symbols from /lib/libc.so.7...done. Loaded symbols for /lib/libc.so.7 Reading symbols from /usr/local/lib/dovecot/lib10_quota_plugin.so...done. Loaded symbols for /usr/local/lib/dovecot/lib10_quota_plugin.so Reading symbols from /usr/local/lib/dovecot/lib11_imap_quota_plugin.so...done. Loaded symbols for /usr/local/lib/dovecot/lib11_imap_quota_plugin.so Reading symbols from /usr/local/lib/dovecot/lib20_zlib_plugin.so...done. Loaded symbols for /usr/local/lib/dovecot/lib20_zlib_plugin.so Reading symbols from /lib/libz.so.6...done. Loaded symbols for /lib/libz.so.6 Reading symbols from /usr/lib/libbz2.so.4...done. Loaded symbols for /usr/lib/libbz2.so.4 Reading symbols from /usr/lib/liblzma.so.5...done. Loaded symbols for /usr/lib/liblzma.so.5 Reading symbols from /libexec/ld-elf.so.1...done. Loaded symbols for /libexec/ld-elf.so.1 #0 0x0000000010cf9730 in o_stream_get_buffer_used_size (stream=0x0) at ostream.c:198 198 ostream.c: No such file or directory. in ostream.c (gdb) bt full #0 0x0000000010cf9730 in o_stream_get_buffer_used_size (stream=0x0) at ostream.c:198 _stream = (const struct ostream_private *) 0xd #1 0x0000000000435ac9 in notify_ok (mailbox=0x118e1c40, text=0x118063a8 "Stale mailbox lock file detected, will override in 0 seconds", context=0x11845840) at mail-storage-callbacks.c:13 client = (struct client *) 0x11845840 #2 0x000000001096f4e4 in index_storage_lock_notify (box=0x118e1c40, notify_type=MAILBOX_LOCK_NOTIFY_MAILBOX_OVERRIDE, secs_left=0) at index-storage.c:137 ibox = (struct index_mailbox_context *) 0x118e20b0 storage = (struct mail_storage *) 0x11873640 str = 0x118063a8 "Stale mailbox lock file detected, will override in 0 seconds" now = 1453448110 #3 0x00000000108fbedd in dotlock_callback (secs_left=0, stale=true, context=0x118e1c40) at maildir-uidlist.c:250 box = (struct mailbox *) 0x118e1c40 #4 0x0000000010ccba7c in dotlock_create (dotlock=0x118a8140, flags=DOTLOCK_CREATE_FLAG_NONBLOCK, write_pid=true, lock_path_r=0x7fffffffe4e0) at file-dotlock.c:549 secs_left = 0 set = (const struct dotlock_settings *) 0x118a8140 lock_path = 0x11806220 "/var/mail/mbox1/0/2/Maildir/.Junk/dovecot-uidlist.lock" lock_info = {set = 0x118a8140, path = 0x118b59c0 "/var/mail/mbox1/0/2/Maildir/.Junk/dovecot-uidlist", lock_path = 0x11806220 "/var/mail/mbox1/0/2/Maildir/.Junk/dovecot-uidlist.lock", temp_path = 0x0, fd = -1, lock_info = {dev = 0, ino = 0, size = 0, ctime = 0, mtime = 0}, file_info = {dev = 0, ino = 0, size = 0, ctime = 0, mtime = 0}, last_pid_check = 0, last_change = 0, wait_usecs = 0, have_pid = 0, pid_read = 0, use_io_notify = 1, lock_stated = 1} st = {st_dev = 1, st_ino = 32767, st_mode = 0, st_nlink = 0, st_uid = 0, st_gid = 0, st_rdev = 0, st_atim = {tv_sec = 140737488348216, tv_nsec = 140737488347840}, st_mtim = {tv_sec = 12884901898, tv_nsec = 140737488348320}, st_ctim = {tv_sec = 167, tv_nsec = 0}, st_size = 275162112, st_blocks = 140737488348192, st_blksize = 275046283, st_flags = 0, st_gen = 4294960312, st_lspare = 32767, st_birthtim = {tv_sec = 140737488348216, tv_nsec = 277283844}} stale_notify_threshold = 60 change_secs = 1453448110 wait_left = 2841519186 now = 1453448110 max_wait_time = 0 last_notify = 1453448110 prev_last_change = 0 prev_wait_update = 0 tmp_path = (string_t *) 0x11806270 ret = 0 do_wait = false #5 0x0000000010ccaf87 in file_dotlock_create_real (dotlock=0x118a8140, flags=DOTLOCK_CREATE_FLAG_NONBLOCK) at file-dotlock.c:629 lock_path = 0x11806220 "/var/mail/mbox1/0/2/Maildir/.Junk/dovecot-uidlist.lock" st = {st_dev = 284562744, st_ino = 0, st_mode = 58544, st_nlink = 65535, st_uid = 32767, st_gid = 282105456, st_rdev = 0, st_atim = {tv_sec = 140737488290687, tv_nsec = 50}, st_mtim = {tv_sec = 294345152, tv_nsec = 293746112}, st_ctim = {tv_sec = 284562744, tv_nsec = 294345152}, st_size = 140737488348368, st_blocks = 281883903, st_blksize = 96, st_flags = 0, st_gen = 293746112, st_lspare = 0, st_birthtim = {tv_sec = 140737488348416, tv_nsec = 281819373}} fd = 0 ret = 50 #6 0x0000000010ccae76 in file_dotlock_create (set=0x118dd138, path=0x118235c0 "/var/mail/mbox1/0/2/Maildir/.Junk/dovecot-uidlist", flags=DOTLOCK_CREATE_FLAG_NONBLOCK, dotlock_r=0x118dd168) at file-dotlock.c:673 _data_stack_cur_id = 5 dotlock = (struct dotlock *) 0x118a8140 ret = 0 #7 0x00000000108fb891 in maildir_uidlist_lock_timeout (uidlist=0x118dd100, nonblock=true, refresh=true, refresh_when_locked=true) at maildir-uidlist.c:160 box = (struct mailbox *) 0x118e1c40 perm = (const struct mailbox_permissions *) 0x118e1e10 path = 0x118235c0 "/var/mail/mbox1/0/2/Maildir/.Junk/dovecot-uidlist" old_mask = 63 dotlock_flags = DOTLOCK_CREATE_FLAG_NONBLOCK i = 0 ---Type <return> to continue, or q <return> to quit--- ret = -5216 #8 0x00000000108fe066 in maildir_uidlist_sync_lock (uidlist=0x118dd100, sync_flags=MAILDIR_UIDLIST_SYNC_TRYLOCK, locked_r=0x7fffffffe617) at maildir-uidlist.c:1608 nonblock = true refresh = true ret = -5184 #9 0x00000000108fdd86 in maildir_uidlist_sync_init (uidlist=0x118dd100, sync_flags=MAILDIR_UIDLIST_SYNC_TRYLOCK, sync_ctx_r=0x118061b8) at maildir-uidlist.c:1638 ctx = (struct maildir_uidlist_sync_ctx *) 0x118061b8 locked = false ret = 4 #10 0x00000000108fa021 in maildir_sync_context (ctx=0x11806188, forced=false, find_uid=0x0, lost_files_r=0x7fffffffe71f) at maildir-sync.c:871 sync_flags = MAILDIR_UIDLIST_SYNC_TRYLOCK flags = 4294960816 new_changed = true cur_changed = true lock_failure = false fname = 0x7fffffffe5a0 "àåÿÿÿ\177" why = 36 ret = 1 #11 0x00000000108f9400 in maildir_sync_run (mbox=0x118e1c40, flags=68, force_resync=false, uid=0x0, lost_files_r=0x7fffffffe71f) at maildir-sync.c:1023 _data_stack_cur_id = 4 ctx = (struct maildir_sync_context *) 0x11806188 retry = false lost_files = false ret = 294526016 #12 0x00000000108f96b0 in maildir_storage_sync_init (box=0x118e1c40, flags=68) at maildir-sync.c:1096 mbox = (struct maildir_mailbox *) 0x118e1c40 lost_files = false force_resync = false ret = 0 #13 0x00000000108b75b9 in mailbox_sync_init (box=0x118e1c40, flags=68) at mail-storage.c:1657 _data_stack_cur_id = 3 ctx = (struct mailbox_sync_context *) 0xc #14 0x00000000108b6891 in mailbox_sync (box=0x118e1c40, flags=68) at mail-storage.c:1705 ctx = (struct mailbox_sync_context *) 0x206 status = {sync_delayed_expunges = 1} #15 0x00000000108a6e65 in mailbox_autoexpunge (box=0x118e1c40, expire_time=1450856110) at mail-autoexpunge.c:29 t = (struct mailbox_transaction_context *) 0x11873640 mail = (struct mail *) 0x118e1c40 metadata = {guid = '\0' <repeats 15 times>, virtual_size = 0, physical_size = 0, first_save_date = 1450855115, cache_fields = 0x0, precache_fields = 0, backend_ns_prefix = 0x0, backend_ns_type = 0} hdr = (const struct mail_index_header *) 0x118b7f10 seq = 0 timestamp = 140737488349168 ret = 0 #16 0x00000000108a6d54 in mail_namespace_autoexpunge (ns=0x118a6020) at mail-autoexpunge.c:76 box_set__foreach_end = (const void *) 0x118b73f0 box_set = (struct mailbox_settings * const *) 0x118b73d8 box = (struct mailbox *) 0x118e1c40 ---Type <return> to continue, or q <return> to quit--- expire_time = 1450856110 #17 0x00000000108a6c54 in mail_user_autoexpunge (user=0x118b6040) at mail-autoexpunge.c:91 ns = (struct mail_namespace *) 0x118a6020 #18 0x00000000108c1b62 in mail_user_unref (_user=0x118458d0) at mail-user.c:167 user = (struct mail_user *) 0x118b6040 #19 0x00000000004216b4 in client_default_destroy (client=0x11845840, reason=0x0) at imap-client.c:390 cmd = (struct client_command_context *) 0x435c47 #20 0x000000000041f53d in client_destroy (client=0x11845840, reason=0x0) at imap-client.c:263 No locals. #21 0x000000000041eccb in client_input (client=0x11845840) at imap-client.c:1121 cmd = (struct client_command_context *) 0x2118401a0 output = (struct ostream *) 0x0 bytes = 11 #22 0x0000000010ce738f in io_loop_call_io (io=0x1187c240) at ioloop.c:559 ioloop = (struct ioloop *) 0x11821080 t_id = 2 #23 0x0000000010cea343 in io_loop_handler_run_internal (ioloop=0x11821080) at ioloop-kqueue.c:151 ctx = (struct ioloop_handler_context *) 0x118190a0 events = (struct kevent *) 0x1187d000 event = (const struct kevent *) 0x1187d000 tv = {tv_sec = 1799, tv_usec = 999858} ts = {tv_sec = 1799, tv_nsec = 999858000} io = (struct io_file *) 0x1187c240 events_count = 5 ret = 1 i = 0 #24 0x0000000010ce791e in io_loop_handler_run (ioloop=0x11821080) at ioloop.c:607 No locals. #25 0x0000000010ce773f in io_loop_run (ioloop=0x11821080) at ioloop.c:583 No locals. #26 0x0000000010c41aab in master_service_run (service=0x1181b140, callback=0x436ab0 <client_connected>) at master-service.c:640 No locals. #27 0x00000000004363c3 in main (argc=2, argv=0x7fffffffeba8) at main.c:442 set_roots = {0x441248, 0x0} login_set = {auth_socket_path = 0x11806040 "x
\200\021", postlogin_socket_path = 0x11806078 "", postlogin_timeout_secs = 60, callback = 0x436760
dovecot -n # 2.2.21 (5345f22): /usr/local/etc/dovecot/dovecot.conf # Pigeonhole version 0.4.11 (6ddf62b87f60+) # OS: FreeBSD 10.2-RELEASE-p10 amd64 doveconf: Warning: Dovecot was last started using /etc/dovecot/dovecot.conf, but this config is /usr/local/etc/dovecot/dovecot.conf auth_cache_size = 10 M auth_cache_ttl = 5 mins auth_mechanisms = plain login auth_socket_path = /var/run/dovecot/auth-userdb auth_verbose = yes auth_worker_max_count = 10 base_dir = /var/run/dovecot/ default_client_limit = 2000 default_process_limit = 200 disable_plaintext_auth = no first_valid_uid = 25 imap_idle_notify_interval = 4 mins log_timestamp = "%Y-%m-%d %H:%M:%S " login_greeting = Ready to serve. mail_fsync = always mail_location = maildir:~/Maildir mail_nfs_index = yes mail_nfs_storage = yes mail_plugins = zlib quota mail_temp_dir = /var/tmp mailbox_list_index = yes maildir_very_dirty_syncs = yes managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body environment mailbox date index ihave duplicate mime foreverypart mbox_write_locks = fcntl mmap_disable = yes namespace inbox { inbox = yes location = mailbox Archive { auto = subscribe special_use = \Archive } mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Junk { auto = subscribe autoexpunge = 30 days special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox Trash { auto = subscribe autoexpunge = 2 weeks special_use = \Trash } prefix = separator = / } passdb { args = /etc/dovecot/dovecot-sql.conf driver = sql } plugin { quota = maildir:User quota quota_exceeded_message = Quota exceeded (Mailbox is full) quota_rule = *:storage=1G quota_rule2 = Trash:ignore sieve = ~/.dovecot.sieve sieve_default = /etc/dovecot/sieve/global/JunkFolder.sieve sieve_dir = ~/.sieve sieve_extensions = -enotify sieve_global_dir = /etc/dovecot/sieve/global/ zlib_save = xz zlib_save_level = 6 } pop3_fast_size_lookups = yes pop3_save_uidl = yes protocols = imap pop3 lmtp sieve rejection_reason = Your message to <%t> was rejected:%n%n %r%n rejection_subject = [BOUNCE] %s service imap-login { inet_listener imap { port = 143 } process_min_avail = 4 service_count = 100 } service imap { executable = imap last-login } service last-login { user = mailnull } service lmtp { process_min_avail = 4 unix_listener lmtp { mode = 0666 } user = mailnull } service managesieve-login { inet_listener sieve { port = 4190 } service_count = 1 } service managesieve { process_limit = 100 } service pop3-login { inet_listener pop3 { port = 110 } process_min_avail = 4 service_count = 100 } service pop3 { executable = pop3 last-login } ssl = no ssl_cipher_list = ALL:!SSLv2:!LOW:!ADH:!NULL:!DES:@STRENGTH ssl_protocols = !SSLv2 !SSLv3 submission_host = localhost:25 userdb { driver = prefetch } userdb { args = /etc/dovecot/dovecot-sql.conf driver = sql } protocol lmtp { mail_plugins = zlib quota sieve } protocol lda { mail_plugins = zlib quota } protocol imap { mail_max_userip_connections = 8 mail_plugins = zlib quota imap_quota } protocol pop3 { mail_max_userip_connections = 2 mail_plugins = zlib quota } protocol sieve { mail_max_userip_connections = 3 managesieve_implementation_string = Dovecot managesieve_max_line_length = 65536 }