Hi,
the dovecot antispam plugin crahses here on a nullpointer dereference in antispam_copy() at mailbox.c
The crash tracks back to a call of antispam_classify_copy(asms->box_class, asmb->box_class)
At that point in time asmb is set to 0x0, causing the process to crash with SIGSEGV.
Regards, Thomas
GDB output:
Program received signal SIGSEGV, Segmentation fault. antispam_copy (ctx=0x14ed9f0, mail=0x14c6cc0) at mailbox.c:107 107 enum mailbox_copy_type copy_type = (gdb) bt #0 antispam_copy (ctx=0x14ed9f0, mail=0x14c6cc0) at mailbox.c:107 #1 0x00007fdadb627fcd in mailbox_copy () from /usr/lib64/dovecot/libdovecot-storage.so.0 #2 0x00007fdada6cdba0 in act_store_execute () from /usr/lib64/dovecot/libdovecot-sieve.so.0 #3 0x00007fdada6c59d9 in sieve_result_execute () from /usr/lib64/dovecot/libdovecot-sieve.so.0 #4 0x00007fdada6d4a2a in sieve_execute () from /usr/lib64/dovecot/libdovecot-sieve.so.0 #5 0x00007fdada9212cb in lda_sieve_deliver_mail () from /usr/lib64/dovecot/lib90_sieve_plugin.so #6 0x00007fdadb8cae1a in mail_deliver () from /usr/lib64/dovecot/libdovecot-lda.so.0 #7 0x0000000000405ebd in client_input_data_handle () #8 0x00007fdadb34e9bf in io_loop_call_io () from /usr/lib64/dovecot/libdovecot.so.0 #9 0x00007fdadb34f8b7 in io_loop_handler_run_internal () from /usr/lib64/dovecot/libdovecot.so.0 #10 0x00007fdadb34ea29 in io_loop_handler_run () from /usr/lib64/dovecot/libdovecot.so.0 #11 0x00007fdadb34eaa8 in io_loop_run () from /usr/lib64/dovecot/libdovecot.so.0 #12 0x00007fdadb2fe803 in master_service_run () from /usr/lib64/dovecot/libdovecot.so.0 #13 0x0000000000404995 in main () (gdb) p asms $3 = (struct antispam_mailbox *) 0x0
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Sun, 17 Aug 2014, Thomas Witt wrote:
the dovecot antispam plugin crahses here on a nullpointer dereference in antispam_copy() at mailbox.c
does it crashes all of the time or for specific messages, mailboxes, etc.pp? What version of Dovecot and which configuration do you use?
The crash tracks back to a call of antispam_classify_copy(asms->box_class, asmb->box_class)
Steffen Kaiser -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux)
iQEVAwUBU/Gk9Xz1H7kL/d9rAQKM1Af+P5ntcfLDv8ilTqJ0TijyYOM7McZP2oSS tlsE99LjR+Ln7ZjT+8NJU1zpUOZOF20C0G3bdSIrDlHNeErUIkbd4pv75Hm7bHLy VSDKNyJ3oyu7tezc5b0mdzLPRCcUjSGNf2S5F9omBuDjzHGMfesArK3EcRKrkR3S 3U2MTRL122uqgBfyv8aXVdns+53gnPfGEevvGvMjgdiTfI2A/pTmMoLWD/EYgv/u jePteZrGOT1AcXqiQGgSKQCXmRBmzPoDabcb4D/IoAecxGY+Ji0B/A/q5mJ9TLLE AvQg9RmMgBKFTYF/o2TEttVkKNUM67Qzc5iExTovx/cnNXzmdRNa5A== =QWzs -----END PGP SIGNATURE-----
On 18/08/14 09:02, Steffen Kaiser wrote:
does it crashes all of the time or for specific messages, mailboxes, etc.pp? What version of Dovecot and which configuration do you use?
Dovecot version is 2.2.13. It crashes on every incoming mail as long as the antispam plugin is activated.
Config:
# 2.2.13: /etc/dovecot/dovecot.conf # OS: Linux 3.15.6 x86_64 ext4 auth_mechanisms = plain login cram-md5 first_valid_gid = 5000 first_valid_uid = 5000 last_valid_gid = 5000 last_valid_uid = 5000 mail_debug = yes mail_gid = 5000 mail_location = maildir:/var/vmail/%u/ mail_uid = 5000 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 ihave duplicate passdb { args = /etc/dovecot/dovecot-sql.conf driver = sql } plugin { antispam_backend = mailtrain antispam_mail_notspam = --ham antispam_mail_sendmail = /usr/bin/sa-learn antispam_mail_spam = --spam antispam_spam = Junk antispam_trash = Trash sieve = ~/.dovecot.sieve sieve_dir = ~/sieve sieve_global_dir = /var/lib/dovecot/sieve/global/ sieve_global_path = /var/lib/dovecot/sieve/default.sieve } postmaster_address = postmaster@witt.link protocols = imap sieve lmtp service auth-worker { user = $default_internal_user } service auth { unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0660 user = postfix } } service lmtp { process_min_avail = 1 unix_listener /var/spool/postfix/private/dovecot-lmtp { group = vmail mode = 0660 user = postfix } } ssl_cert =
protocol lmtp { hostname = witt.link mail_plugins = " sieve" postmaster_address = postmaster@witt.link }
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Mon, 18 Aug 2014, Thomas Witt wrote:
On 18/08/14 09:02, Steffen Kaiser wrote:
does it crashes all of the time or for specific messages, mailboxes, etc.pp? What version of Dovecot and which configuration do you use?
Dovecot version is 2.2.13. It crashes on every incoming mail as long as the antispam plugin is activated.
plugin { antispam_backend = mailtrain antispam_mail_notspam = --ham antispam_mail_sendmail = /usr/bin/sa-learn antispam_mail_spam = --spam antispam_spam = Junk antispam_trash = Trash
As far as I know sa-learn requires a filename at command line, therefore http://wiki2.dovecot.org/Plugins/Antispam spools the message to a file before. Could you try this script? Maybe you can use "-" as filename or something like that.
Steffen Kaiser -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux)
iQEVAwUBU/H8i3z1H7kL/d9rAQL4ewgAlewIw7llu2K7zvR5gUs10iiaT40Y2/IS TKTA38N+96zsyUZ2xfHvEGVKs8zQ/fvfOp+nyY8Qi9Jp423nz0D4rtl9AsOr6orf BuWF+twDHC0dfruH0Z/TQNSFsJvR3eITnP7Yd9SFHX9MQ2q+8tR2p2JT8Rx3V4iL +iEwT4/kfUygALP9V3JOWDsWKgGcAOnEnlEHR3KvOOIk/gsz5W/ZpleUDx5hqAyp 1RDq8raXLQ43IflJtlVwPpik0ZuPfs9mYgMJZm5/62P+nko9sFfYGhKww5eadFZM +bbV2EDHAVncK6h68cdYA79Scv5s3LCd5Bat4EG4tuNzm0mcH0Z+5A== =G8lf -----END PGP SIGNATURE-----
On 18/08/14 15:15, Steffen Kaiser wrote:
As far as I know sa-learn requires a filename at command line, therefore http://wiki2.dovecot.org/Plugins/Antispam spools the message to a file before. Could you try this script? Maybe you can use "-" as filename or something like that.
No it does not. And using that script does not make the crash go away.
Am 18.08.2014 um 16:40 schrieb Thomas Witt:
On 18/08/14 15:15, Steffen Kaiser wrote:
As far as I know sa-learn requires a filename at command line, therefore http://wiki2.dovecot.org/Plugins/Antispam spools the message to a file before. Could you try this script? Maybe you can use "-" as filename or something like that.
No it does not. And using that script does not make the crash go away.
by the way why not simply using i.e spamass-milter with i.e postfix and use global sieve rule for sort Spam Tagged Mail into Imap Junk Folder, for users bayes learn, use some spam/ham.alias forward perl script, to download spam tagged mail in prefiltered Junk Folder via pop3 too use virtual pop3 namespace.
Best Regards MfG Robert Schetterer
-- [*] sys4 AG
http://sys4.de, +49 (89) 30 90 46 64 Franziskanerstraße 15, 81669 München
Sitz der Gesellschaft: München, Amtsgericht München: HRB 199263 Vorstand: Patrick Ben Koetter, Marc Schiffbauer Aufsichtsratsvorsitzender: Florian Kirstein
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Mon, 18 Aug 2014, Thomas Witt wrote:
On 18/08/14 15:15, Steffen Kaiser wrote:
As far as I know sa-learn requires a filename at command line, therefore http://wiki2.dovecot.org/Plugins/Antispam spools the message to a file before. Could you try this script? Maybe you can use "-" as filename or something like that.
No it does not. And using that script does not make the crash go away.
What happens if you configure
antispam_mail_sendmail = /usr/bin/true
(or whereever your "true" programm resides).
Steffen Kaiser -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux)
iQEVAwUBU/MB83z1H7kL/d9rAQJIvwf/fZNMaiIj5PLRCM8VgQbYM3fW+z45Qleb kwLZsI41IotAKoanud6ke19fLj5M50TvdEJ0bPtnnWfefh9W7dJymtu/63zqKCi7 uwDsfMLZw33puHTz7lC+DM6yIwAOm7zog3xja+lD7xtgq0h7q0OPtlmgdKLtNn9f VleYlolHoz4l2KdnMNdorlb44ZtYA0gJXHc68GYEZNbwQPTrePNbheQEMjnVRBpX RuCsb9Cv3sdppf9SfY7ZaDroXL7CwZ4zxUUjD8KRzALS4wjOgG4ytIYIXLcBsn9F gmyXgQ0rCdhpGxMdsyum4o7HzzfSd7A72PDhRIQDjJENG9p3oQSP/w== =BmMY -----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Tue, 19 Aug 2014, Thomas Witt wrote:
Please see Timo's advice in the thread "Re: Fatal: master: service(imap): child 28145 killed with signal 11 (core dumped) -- started happening after upgrade last night" "Maybe the problem in your case is that the antispam plugin just wasn't recompiled after some changes that required recompiling. "
The plugin does not detect changes, you need to "make clean" to force an newly compilation.
Steffen Kaiser -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux)
iQEVAwUBU/SapHz1H7kL/d9rAQLkxgf/besPVA5PbS1GtJt8lvq3KKpF4IFmNgcz YN/kWSaMqa9vviAOUFS86ahVX/TraDUsM959cTRvDlmK2/bjWMVlzSHlr9mph03x YitT1C8Cm3AajhniACzfNhEam+dt0ac8XD6ysswkkL2+oNSvd/kN2LNjo2W1ifeV u+dF88Z2MUJquhxx/SUEEXcr0sZOMpFDRpliw7NfRt+AaiqKwDyhGMnLcYdlaT5Q 65AWEt4ndr1n8Iwja+FkVcopfTA18k/u5o8q3VVaXxK3ZnZ8ZsunktNIThloI34X wq4q751rnhapcdv3xCfw+i/Ird3n/odV9ZWkRHIxVTIonSIekJJfeg== =wR3u -----END PGP SIGNATURE-----
On 20/08/14 14:55, Steffen Kaiser wrote:
On Tue, 19 Aug 2014, Thomas Witt wrote:
Please see Timo's advice in the thread "Re: Fatal: master: service(imap): child 28145 killed with signal 11 (core dumped) -- started happening after upgrade last night" "Maybe the problem in your case is that the antispam plugin just wasn't recompiled after some changes that required recompiling. "
The plugin does not detect changes, you need to "make clean" to force an newly compilation.
-- Steffen Kaiser
Still crashing. Did you consider that this might be a bug instead of a configuration error?
participants (3)
-
Robert Schetterer
-
Steffen Kaiser
-
Thomas Witt