Larry Rosenman
2018-Jan-03 19:49 UTC
sieve/internal error/detail subaddress and IMAP4FLAGS.
I'm trying to set an IMAP Flag with the detail part of an address, but getting an internal error: an 3 13:37:27 thebighonker exim[537]: 1eWoqt-00008f-4u <= ler at lerctr.org H=(lrosenman.local) [74.203.163.58]:4650 I=[192.147.25.65]:587 P=esmtpsa X=TLSv1.2:ECDHE-RSA-AES256-GCM-SHA3 84:256 CV=no SNI="smtp.lerctr.org" A=dovecot_login:ler S=769 id=20180103193716.oofszdaxopnkgfvd at lrosenman.local Jan 3 13:37:27 thebighonker dovecot: lmtp(549): Connect from local Jan 3 13:37:27 thebighonker dovecot: lmtp(ler at lerctr.org/549): save: box=INBOX, uid=127797, msgid=<20180103193716.oofszdaxopnkgfvd at lrosenman.local>, size=1033, vsize=1062, from=Larry Rosenman <ler at lerctr.org>, subject=testd, flags=() Jan 3 13:37:27 thebighonker dovecot: lmtp(ler at lerctr.org/549): sieve: msgid=<20180103193716.oofszdaxopnkgfvd at lrosenman.local>: stored mail into mailbox 'INBOX' (subject=testd from=le r at lerctr.org size=1062) Jan 3 13:37:27 thebighonker dovecot: lmtp(ler at lerctr.org/549): Error: sieve: !!BUG!!: Binary compiled from /home/ler/.dovecot.sieve is still corrupt; bailing out and reverting to def ault delivery Jan 3 13:37:27 thebighonker dovecot: lmtp(549): Disconnect from local: Client has quit the connection (state = READY) Jan 3 13:37:27 thebighonker exim[545]: 1eWoqt-00008f-4u == ler_testd at lerctr.org R=localuser T=dovecot_lmtp defer (-46): LMTP error after end of data: 451 4.2.0 <ler_testd at lerctr.org> BUG: Unknown internal error Jan 3 13:37:27 thebighonker dovecot: indexer-worker(ler at lerctr.org/536): Indexed 1 messages in INBOX (UIDs 127797..127797) .dovecot.sieve points to master.sieve (below), and the rest of the scripts (including master.sieve) are at http://www.lerctr.org/~ler/sieve. require ["fileinto","imap4flags","include","mailbox", "envelope","subaddress","variables"]; require "vnd.dovecot.debug"; global "MyFlags"; if envelope :detail "to" "freebsd" { addflag "FreeBSD"; addflag "MyFlags" "FreeBSD"; } if envelope :matches :detail "to" "*" { set "detail" "${1}"; addflag "${detail}"; addflag "MyFlags" "${detail}"; } debug_log "MyFlags=${MyFlags}, detail=${detail}"; include :personal "spam"; include :personal "freebsd"; include :personal "postgresql"; include :personal "misc"; include :personal "mailinglist"; Doveconf -n: # 2.3.0 (c8b89eb): /usr/local/etc/dovecot/dovecot.conf # Pigeonhole version 0.5.0 (d68c23a1) # OS: FreeBSD 11.1-STABLE amd64 auth_mechanisms = plain login auth_realms = lerctr.org thebighonker.lerctr.org tbh.lerctr.org thejonesonair.com thejonesonair.net default_vsz_limit = 1 G deliver_log_format = msgid=%m: %$ (subject=%s from=%f size=%w) doveadm_password = # hidden, use -P to show it first_valid_gid = 0 first_valid_uid = 0 lda_mailbox_autocreate = yes listen = 192.147.25.65, :: login_access_sockets = tcpwrap mail_attribute_dict = file:%h/mail/.imap/dovecot-mail-attributes mail_location = mbox:~/mail:INBOX=~/mail/INBOX mail_log_prefix = "%s(%u/%p): " mail_plugins = " fts fts_solr notify virtual" mail_privileged_group = mail mail_server_admin = mailto:ler at lerctr.org mail_server_comment = LERCTR Mail Server 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 vacation-seconds editheader mboxmetadata servermetadata vnd.dovecot.debug imapsieve vnd.dovecot.imapsieve namespace archive { hidden = no list = no location = mbox:~/MAIL-ARCHIVE prefix = ARCHIVE/ separator = / } namespace inbox { inbox = yes location = mailbox Drafts { special_use = \Drafts } mailbox INBOX { auto = create } mailbox SENT { special_use = \Sent } mailbox SPAM { special_use = \Junk } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { special_use = \Trash } mailbox virtual/Flagged { special_use = \Flagged } mailbox virtual/all { special_use = \All } prefix = separator = / } namespace virtual { hidden = no list = yes location = virtual:~/MAIL-VIRTUAL:INDEX=MEMORY prefix = Virtual/ separator = / } passdb { args = /usr/local/etc/dovecot/dovecot-sql.conf.ext driver = sql } passdb { args = user=%Ln noauthenticate driver = static skip = authenticated } passdb { args = failure_show_msg=yes session=yes max_requests=20 driver = pam skip = authenticated } plugin { fts = solr fts_autoindex = yes fts_solr = url=http://thebighonker.lerctr.org:8983/solr/dovecot/ fts_tika = http://localhost:9998/tika/ imapsieve_mailbox1_before = file:/usr/local/share/dovecot-pigeonhole/sieve/report-spam.sieve imapsieve_mailbox1_causes = COPY imapsieve_mailbox1_name = SPAM imapsieve_mailbox2_before = file:/usr/local/share/dovecot-pigeonhole/sieve/report-ham.sieve imapsieve_mailbox2_causes = COPY imapsieve_mailbox2_from = SPAM imapsieve_mailbox2_name = * imapsieve_url = sieve://thebighonker.lerctr.org mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename flag_change append mail_log_fields = uid box msgid size from subject vsize flags recipient_delimiter = +-_ sieve = ~/.dovecot.sieve sieve_dir = ~/sieve sieve_execute_bin_dir = /usr/local/share/dovecot-pigeonhole/sieve sieve_extensions = +editheader +vacation-seconds +mboxmetadata +servermetadata +vnd.dovecot.debug sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.execute sieve_pipe_bin_dir = /usr/local/share/dovecot-pigeonhole/sieve sieve_plugins = sieve_imapsieve sieve_extprograms } protocols = imap pop3 lmtp sieve recipient_delimiter = +-_ service anvil { unix_listener anvil { group = mail mode = 0660 } } service auth { unix_listener auth-client { mode = 0666 } unix_listener auth-master { mode = 0666 } } service doveadm { inet_listener http { port = 8080 ssl = yes } } service indexer-worker { drop_priv_before_exec = yes } service lmtp { inet_listener lmtp { address = 127.0.0.1 port = 24 } } service managesieve-login { inet_listener sieve { port = 4190 } inet_listener sieve_deprecated { port = 2000 } } service stats { unix_listener stats-reader { group = mail mode = 0660 user = } unix_listener stats-writer { group = mail mode = 0660 user = } } service tcpwrap { unix_listener login/tcpwrap { group = $default_login_user mode = 0600 user = $default_login_user } } ssl_cert = </home/ler/letsencrypt-home/lerctr.org/fullchain.cer ssl_cipher_list = EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH+AESGCM:EECDH:EDH+AESGCM:EDH+aRSA:HIGH:!MEDIUM:!LOW:!aNULL:!eNULL:!LOW:!RC4:!MD5:!EXP:!PSK:!SRP:!DSS ssl_dh = # hidden, use -P to show it ssl_key = # hidden, use -P to show it userdb { args = /usr/local/etc/dovecot/dovecot-sql.conf.ext driver = sql } userdb { args = username_format=%Ln /etc/passwd driver = passwd-file } verbose_proctitle = yes protocol lmtp { mail_plugins = " fts fts_solr notify virtual sieve mail_log" } protocol lda { mail_plugins = " fts fts_solr notify virtual sieve mail_log" } protocol pop3 { mail_plugins = " fts fts_solr notify virtual mail_log" } protocol !doveadm { mail_plugins = " fts fts_solr notify virtual mail_log" } protocol imap { imap_client_workarounds = tb-extra-mailbox-sep tb-lsub-flags imap_logout_format = in=%i out=%o fhc=%{fetch_hdr_count} fhb=%{fetch_hdr_bytes} fbc=%{fetch_body_count} fbb=%{fetch_body_bytes} del=%{deleted} exp=%{expunged} trash=%{trashed} imap_metadata = yes mail_max_userip_connections = 50 mail_plugins = " fts fts_solr notify virtual mail_log imap_sieve" } -- Larry Rosenman http://www.lerctr.org/~ler Phone: +1 214-642-9640 E-Mail: larryrtx at gmail.com US Mail: 5708 Sabbia Drive, Round Rock, TX 78665-2106
Stephan Bosch
2018-Jan-03 22:57 UTC
sieve/internal error/detail subaddress and IMAP4FLAGS.
Op 1/3/2018 om 8:49 PM schreef Larry Rosenman:> I'm trying to set an IMAP Flag with the detail part of an address, but getting > an internal error: > > an 3 13:37:27 thebighonker exim[537]: 1eWoqt-00008f-4u <= ler at lerctr.org H=(lrosenman.local) [74.203.163.58]:4650 I=[192.147.25.65]:587 P=esmtpsa X=TLSv1.2:ECDHE-RSA-AES256-GCM-SHA3 > 84:256 CV=no SNI="smtp.lerctr.org" A=dovecot_login:ler S=769 id=20180103193716.oofszdaxopnkgfvd at lrosenman.local > Jan 3 13:37:27 thebighonker dovecot: lmtp(549): Connect from local > Jan 3 13:37:27 thebighonker dovecot: lmtp(ler at lerctr.org/549): save: box=INBOX, uid=127797, msgid=<20180103193716.oofszdaxopnkgfvd at lrosenman.local>, size=1033, vsize=1062, from=Larry > Rosenman <ler at lerctr.org>, subject=testd, flags=() > Jan 3 13:37:27 thebighonker dovecot: lmtp(ler at lerctr.org/549): sieve: msgid=<20180103193716.oofszdaxopnkgfvd at lrosenman.local>: stored mail into mailbox 'INBOX' (subject=testd from=le > r at lerctr.org size=1062) > Jan 3 13:37:27 thebighonker dovecot: lmtp(ler at lerctr.org/549): Error: sieve: !!BUG!!: Binary compiled from /home/ler/.dovecot.sieve is still corrupt; bailing out and reverting to def > ault delivery > Jan 3 13:37:27 thebighonker dovecot: lmtp(549): Disconnect from local: Client has quit the connection (state = READY) > Jan 3 13:37:27 thebighonker exim[545]: 1eWoqt-00008f-4u == ler_testd at lerctr.org R=localuser T=dovecot_lmtp defer (-46): LMTP error after end of data: 451 4.2.0 <ler_testd at lerctr.org> > BUG: Unknown internal error > Jan 3 13:37:27 thebighonker dovecot: indexer-worker(ler at lerctr.org/536): Indexed 1 messages in INBOX (UIDs 127797..127797)OK, problem is visible directly by dumping the binary using the sieve-dump tool. The dump ends in: 00000070:?? 10: SET 00000072:???????? variable: VAR[0] ${detail} 00000076:???????? value: MATCHVAL 1 0000007a:?? 11: ADDFLAG 0000007c:???????? variable name: VAR[0] ${detail} 00000080:?? 12:?? list of flags: MATCHVAL 14 00000083:?? 12: Failed to read opcode. 00000083:?? 12: Binary is corrupt. Will fix... Regards, Stephan.
Stephan Bosch
2018-Jan-04 00:24 UTC
sieve/internal error/detail subaddress and IMAP4FLAGS.
Op 1/3/2018 om 11:57 PM schreef Stephan Bosch:> Op 1/3/2018 om 8:49 PM schreef Larry Rosenman: >> I'm trying to set an IMAP Flag with the detail part of an address, but getting >> an internal error: >> >> an 3 13:37:27 thebighonker exim[537]: 1eWoqt-00008f-4u <= ler at lerctr.org H=(lrosenman.local) [74.203.163.58]:4650 I=[192.147.25.65]:587 P=esmtpsa X=TLSv1.2:ECDHE-RSA-AES256-GCM-SHA3 >> 84:256 CV=no SNI="smtp.lerctr.org" A=dovecot_login:ler S=769 id=20180103193716.oofszdaxopnkgfvd at lrosenman.local >> Jan 3 13:37:27 thebighonker dovecot: lmtp(549): Connect from local >> Jan 3 13:37:27 thebighonker dovecot: lmtp(ler at lerctr.org/549): save: box=INBOX, uid=127797, msgid=<20180103193716.oofszdaxopnkgfvd at lrosenman.local>, size=1033, vsize=1062, from=Larry >> Rosenman <ler at lerctr.org>, subject=testd, flags=() >> Jan 3 13:37:27 thebighonker dovecot: lmtp(ler at lerctr.org/549): sieve: msgid=<20180103193716.oofszdaxopnkgfvd at lrosenman.local>: stored mail into mailbox 'INBOX' (subject=testd from=le >> r at lerctr.org size=1062) >> Jan 3 13:37:27 thebighonker dovecot: lmtp(ler at lerctr.org/549): Error: sieve: !!BUG!!: Binary compiled from /home/ler/.dovecot.sieve is still corrupt; bailing out and reverting to def >> ault delivery >> Jan 3 13:37:27 thebighonker dovecot: lmtp(549): Disconnect from local: Client has quit the connection (state = READY) >> Jan 3 13:37:27 thebighonker exim[545]: 1eWoqt-00008f-4u == ler_testd at lerctr.org R=localuser T=dovecot_lmtp defer (-46): LMTP error after end of data: 451 4.2.0 <ler_testd at lerctr.org> >> BUG: Unknown internal error >> Jan 3 13:37:27 thebighonker dovecot: indexer-worker(ler at lerctr.org/536): Indexed 1 messages in INBOX (UIDs 127797..127797) > OK, problem is visible directly by dumping the binary using the > sieve-dump tool. The dump ends in: > > 00000070:?? 10: SET > 00000072:???????? variable: VAR[0] ${detail} > 00000076:???????? value: MATCHVAL 1 > 0000007a:?? 11: ADDFLAG > 0000007c:???????? variable name: VAR[0] ${detail} > 00000080:?? 12:?? list of flags: MATCHVAL 14 > 00000083:?? 12: Failed to read opcode. > 00000083:?? 12: Binary is corrupt. > > Will fix...It is an ancient one. Fix pending: https://github.com/stephanbosch/pigeonhole-core/commits/fix-imap4flags-variable Regards, Stephan.