<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p><span class="tlid-translation translation" lang="en"><span
          title="" class="">That's what I was afraid of. Some users are
          trying to set up vacation message with inline picture. I am
          aware it's not ideal but in some cases it's needed.</span></span><br>
      <span class="tlid-translation translation" lang="en"><span
          title="" class=""><span class="tlid-translation translation"
            lang="en"><span title="" class="">It would be nice if this
              configuration option works in the future.</span></span></span></span></p>
    <span class="tlid-translation translation" lang="en"><span title=""
        class=""><span class="tlid-translation translation" lang="en"><span
            title="" class="">Regards,<br>
          </span></span></span></span>
    <p><span class="tlid-translation translation" lang="en"><span
          title="" class=""><span class="tlid-translation translation"
            lang="en"><span title="" class=""> Zdenek</span></span></span></span></p>
    <p><span class="tlid-translation translation" lang="en"><span
          title="" class=""><span class="tlid-translation translation"
            lang="en"><span title="" class=""><br>
            </span></span></span></span></p>
    <div class="moz-cite-prefix">On 8/19/20 5:01 PM, Stephan Bosch
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:af223305-ccfb-d67e-aea6-b14567237f3a@rename-it.nl">
      <br>
      <br>
      Op 19-8-2020 om 13:47 schreef Zdeněk Zámečník:
      <br>
      <blockquote type="cite">I am in troubles with compiling sieve
        scripts larger than 1MB.
        <br>
        I see in logs following errors:
        <br>
        Aug 19 13:10:26 mail dovecot:
        lmtp(<a class="moz-txt-link-abbreviated" href="mailto:z.z@xxx.xxx">z.z@xxx.xxx</a>)<22117><uNBGHKIIPV9lVgAA5ldI4A>:
        Error: sieve: autoreply: line 16818: quoted string started at
        line 3 is too long (longer than 1048576 bytes)
        <br>
        Aug 19 13:10:26 mail dovecot:
        lmtp(<a class="moz-txt-link-abbreviated" href="mailto:z.z@xxx.xxx">z.z@xxx.xxx</a>)<22117><uNBGHKIIPV9lVgAA5ldI4A>:
        Error: sieve: autoreply: parse failed
        <br>
        Aug 19 13:10:26 mail dovecot:
        lmtp(<a class="moz-txt-link-abbreviated" href="mailto:z.z@xxx.xxx">z.z@xxx.xxx</a>)<22117><uNBGHKIIPV9lVgAA5ldI4A>:
        Error: sieve: Failed to compile script
        `/var/vmail/xxx.xxx/z.z/sieve/autoreply.sieve'
        <br>
        <br>
        I tried to set sieve_max_script_size = 2M or 0 (unlimited). I
        also tried to run "sievec -o sieve_max_script_size=2M
        /var/vmail/xxx.xxx/z.z/sieve/autoreply.sieve" but the result is
        still same. Below is my config.
        <br>
        Can you please advice where can be the problem?
        <br>
        <br>
      </blockquote>
      <br>
<a class="moz-txt-link-freetext" href="https://git.dovecot.net/pigeonhole/core/-/blob/master/src/lib-sieve/sieve-limits.h#L18">https://git.dovecot.net/pigeonhole/core/-/blob/master/src/lib-sieve/sieve-limits.h#L18</a>
      <br>
      <br>
      That error is about the maximum length of a string literal. This
      is currently hard-coded at 1Mb and thus not configurable. What are
      you doing that you need such a big string value?
      <br>
      <br>
      Regards,
      <br>
      <br>
      Stephan.
      <br>
      <br>
      <blockquote type="cite"># 2.3.10.1 (a3d0e1171):
        /etc/dovecot/dovecot.conf
        <br>
        # Pigeonhole version 0.5.10 (67bf5bd7)
        <br>
        # OS: Linux 5.4.44-2-pve x86_64 Debian 10.4
        <br>
        # Hostname: mail.xxx.xxx
        <br>
        auth_cache_size = 2 M
        <br>
        auth_cache_ttl = 5 mins
        <br>
        auth_master_user_separator = *
        <br>
        auth_mechanisms = plain login
        <br>
        auth_policy_check_before_auth = no
        <br>
        auth_policy_hash_nonce = # hidden, use -P to show it
        <br>
        auth_policy_report_after_auth = no
        <br>
        auth_policy_server_timeout_msecs = 1500
        <br>
        auth_policy_server_url =<a class="moz-txt-link-freetext" href="http://127.0.0.1:8090/">http://127.0.0.1:8090/</a>
        <br>
        dict {
        <br>
           acl = pgsql:/etc/dovecot/dovecot-dict-sql.conf.ext
        <br>
           quota = pgsql:/etc/dovecot/dovecot-dict-sql.conf.ext
        <br>
        }
        <br>
        disable_plaintext_auth = no
        <br>
        imap_client_workarounds = delay-newmail
        <br>
        imap_id_log = *
        <br>
        imap_id_retain = yes
        <br>
        login_trusted_networks = 127.0.0.0/8
        <br>
        mail_gid = 2000
        <br>
        mail_home = /var/vmail/%d/%n
        <br>
        mail_location = mdbox:~/mdbox:ALT=/var/vmail-archive/%d/%n/mdbox
        <br>
        mail_max_userip_connections = 60
        <br>
        mail_plugins = acl zlib fts quota
        <br>
        mail_uid = 2000
        <br>
        managesieve_notify_capability = mailto
        <br>
        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 imapsieve
        vnd.dovecot.imapsieve
        <br>
        mdbox_rotate_interval = 1 days
        <br>
        mdbox_rotate_size = 16 M
        <br>
        namespace {
        <br>
           inbox = yes
        <br>
           location =
        <br>
           mailbox "Deleted Items" {
        <br>
             auto = no
        <br>
             special_use = \Trash
        <br>
           }
        <br>
           mailbox "Deleted Messages" {
        <br>
             auto = no
        <br>
             special_use = \Trash
        <br>
           }
        <br>
           mailbox Drafts {
        <br>
             auto = no
        <br>
             special_use = \Drafts
        <br>
           }
        <br>
           mailbox Junk {
        <br>
             auto = subscribe
        <br>
             special_use = \Junk
        <br>
           }
        <br>
           mailbox "Junk E-mail" {
        <br>
             auto = no
        <br>
             special_use = \Junk
        <br>
           }
        <br>
           mailbox Sent {
        <br>
             auto = subscribe
        <br>
             special_use = \Sent
        <br>
           }
        <br>
           mailbox "Sent Items" {
        <br>
             auto = no
        <br>
             special_use = \Sent
        <br>
           }
        <br>
           mailbox "Sent Messages" {
        <br>
             auto = no
        <br>
             special_use = \Sent
        <br>
           }
        <br>
           mailbox Spam {
        <br>
             auto = no
        <br>
             special_use = \Junk
        <br>
           }
        <br>
           mailbox Trash {
        <br>
             special_use = \Trash
        <br>
           }
        <br>
           mailbox virtual/All {
        <br>
             auto = no
        <br>
             special_use = \All
        <br>
           }
        <br>
           prefix =
        <br>
           separator = /
        <br>
           type = private
        <br>
        }
        <br>
        namespace {
        <br>
           inbox = no
        <br>
           list = children
        <br>
           location =
        mdbox:/var/vmail/%%d/%%n/mdbox:ALT=/var/vmail-archive/%%d/%%n/mdbox
        <br>
           prefix = shared/%%u/
        <br>
           separator = /
        <br>
           subscriptions = no
        <br>
           type = shared
        <br>
        }
        <br>
        passdb {
        <br>
           args = /etc/dovecot/dovecot-ldap.conf
        <br>
           driver = ldap
        <br>
        }
        <br>
        passdb {
        <br>
           args = /etc/dovecot/masters.db
        <br>
           driver = passwd-file
        <br>
           master = yes
        <br>
           pass = yes
        <br>
        }
        <br>
        plugin {
        <br>
           acl = vfile
        <br>
           acl_shared_dict = proxy::acl
        <br>
           imapsieve_mailbox1_before
        =<a class="moz-txt-link-freetext" href="file:/var/vmail/sieve/report-spam.sieve">file:/var/vmail/sieve/report-spam.sieve</a>
        <br>
           imapsieve_mailbox1_causes = COPY
        <br>
           imapsieve_mailbox1_name = Spam
        <br>
           imapsieve_mailbox2_before
        =<a class="moz-txt-link-freetext" href="file:/var/vmail/sieve/report-ham.sieve">file:/var/vmail/sieve/report-ham.sieve</a>
        <br>
           imapsieve_mailbox2_causes = COPY
        <br>
           imapsieve_mailbox2_from = Spam
        <br>
           imapsieve_mailbox2_name = *
        <br>
           imapsieve_mailbox3_before
        =<a class="moz-txt-link-freetext" href="file:/var/vmail/sieve/report-spam.sieve">file:/var/vmail/sieve/report-spam.sieve</a>
        <br>
           imapsieve_mailbox3_causes = COPY
        <br>
           imapsieve_mailbox3_name = Junk
        <br>
           imapsieve_mailbox4_before
        =<a class="moz-txt-link-freetext" href="file:/var/vmail/sieve/report-ham.sieve">file:/var/vmail/sieve/report-ham.sieve</a>
        <br>
           imapsieve_mailbox4_causes = COPY
        <br>
           imapsieve_mailbox4_from = Junk
        <br>
           imapsieve_mailbox4_name = *
        <br>
           mailbox_alias_new = Sent Messages
        <br>
           mailbox_alias_new2 = Sent Items
        <br>
           mailbox_alias_new3 = Deleted Items
        <br>
           mailbox_alias_old = Sent
        <br>
           mailbox_alias_old2 = Sent
        <br>
           mailbox_alias_old3 = Trash
        <br>
           quota = dict:User quota::proxy::quota
        <br>
           quota_grace = 10%%
        <br>
           quota_rule2 = Trash:ignore
        <br>
           quota_rule3 = Junk:ignore
        <br>
           quota_warning = storage=80%% quota-warning 90 %u
        <br>
           quota_warning2 = storage=85%% quota-warning 95 %u
        <br>
           quota_warning3 = storage=95%% quota-warning 105 %u
        <br>
           sieve = /var/vmail/%d/%n/sieve/.sieve
        <br>
           sieve_after = /var/vmail/%d/%n/sieve/autoreply.sieve
        <br>
           sieve_before = /var/vmail/sieve/global.sieve
        <br>
           sieve_dir = /var/vmail/%d/%n/sieve
        <br>
           sieve_extensions = +editheader +vacation-seconds
        <br>
           sieve_global_dir = /var/vmail/sieve/
        <br>
           sieve_global_extensions = +vnd.dovecot.pipe
        +vnd.dovecot.environment
        <br>
           sieve_max_redirects = 20
        <br>
           sieve_max_script_size = 2M
        <br>
           sieve_pipe_bin_dir = /usr/lib/dovecot
        <br>
           sieve_plugins = sieve_imapsieve sieve_extprograms
        <br>
           sieve_vacation_send_from_recipient = yes
        <br>
        }
        <br>
        protocols = imap sieve lmtp pop3
        <br>
        service auth-worker {
        <br>
           unix_listener auth-worker {
        <br>
             user = vmail
        <br>
           }
        <br>
           user = $default_internal_user
        <br>
        }
        <br>
        service auth {
        <br>
           unix_listener /var/spool/postfix/private/auth {
        <br>
             group = postfix
        <br>
             mode = 0660
        <br>
             user = postfix
        <br>
           }
        <br>
           unix_listener auth-userdb {
        <br>
             mode = 0600
        <br>
             user = vmail
        <br>
           }
        <br>
           user = vmail
        <br>
        }
        <br>
        service dict {
        <br>
           unix_listener dict {
        <br>
             mode = 0600
        <br>
             user = vmail
        <br>
           }
        <br>
        }
        <br>
        service imap-login {
        <br>
           process_min_avail = 10
        <br>
           service_count = 0
        <br>
           vsz_limit = 512 M
        <br>
        }
        <br>
        service imap {
        <br>
           executable = imap
        <br>
           process_limit = 3500
        <br>
           unix_listener imap-master {
        <br>
             user = $default_internal_user
        <br>
           }
        <br>
           vsz_limit = 2 G
        <br>
        }
        <br>
        service lmtp {
        <br>
           unix_listener /var/spool/postfix/private/dovecot-lmtp {
        <br>
             group = postfix
        <br>
             mode = 0600
        <br>
             user = postfix
        <br>
           }
        <br>
        }
        <br>
        service managesieve-login {
        <br>
           inet_listener sieve {
        <br>
             port = 4190
        <br>
           }
        <br>
           process_min_avail = 0
        <br>
           service_count = 1
        <br>
           vsz_limit = 64 M
        <br>
        }
        <br>
        service managesieve {
        <br>
           process_limit = 400
        <br>
        }
        <br>
        service pop3-login {
        <br>
           process_min_avail = 3
        <br>
           service_count = 0
        <br>
           vsz_limit = 320 M
        <br>
        }
        <br>
        service pop3 {
        <br>
           process_limit = 200
        <br>
           vsz_limit = 320 M
        <br>
        }
        <br>
        service quota-warning {
        <br>
           executable = script /etc/dovecot/quota_warning.sh
        <br>
           unix_listener quota-warning {
        <br>
             mode = 0666
        <br>
             user = vmail
        <br>
           }
        <br>
           user = vmail
        <br>
        }
        <br>
        ssl_cert = </etc/ssl/private/multi.z-technics.cz.dovecot.pem
        <br>
        ssl_dh = # hidden, use -P to show it
        <br>
        ssl_key = # hidden, use -P to show it
        <br>
        stats_writer_socket_path =
        <br>
        userdb {
        <br>
           args = /etc/dovecot/dovecot-ldap.conf
        <br>
           driver = ldap
        <br>
        }
        <br>
        protocol sieve {
        <br>
           managesieve_implementation_string = Dovecot Pigeonhole
        <br>
           managesieve_max_compile_errors = 5
        <br>
        }
        <br>
        protocol imap {
        <br>
           mail_plugins = quota imap_quota fts mailbox_alias imap_acl
        acl imap_zlib imap_sieve
        <br>
        }
        <br>
        protocol lda {
        <br>
           mail_fsync = optimized
        <br>
        }
        <br>
        protocol lmtp {
        <br>
           mail_fsync = optimized
        <br>
           mail_plugins = quota sieve acl
        <br>
        }
        <br>
        <br>
        <br>
      </blockquote>
      <br>
    </blockquote>
  </body>
</html>