sieve/internal error/detail subaddress and IMAP4FLAGS.

Larry Rosenman larryrtx at gmail.com
Wed Jan 3 21:49:37 EET 2018


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


More information about the dovecot mailing list