<html><head><meta http-equiv="Content-Type" content="text/html; charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div class="">Hi,</div><div class=""><br class=""></div>"If personal user scripts also need to directly access external programs, the extensions need to be added to the <tt class="">sieve_extensions</tt> setting. "<div class=""><br class=""></div><div class="">from <a href="https://wiki2.dovecot.org/Pigeonhole/Sieve/Plugins/Extprograms" class="">https://wiki2.dovecot.org/Pigeonhole/Sieve/Plugins/Extprograms</a></div><div class=""><br class=""></div><div class="">so is this a global sieve script or personal sieve script? I think it is personal script as it is triggered by imapsieve.</div><div class=""><br class=""></div><div class="">Sami<br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On 1 Apr 2020, at 15.35, Johannes Rohr <<a href="mailto:johannes@rohr.org" class="">johannes@rohr.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div style="text-align:left; direction:ltr;" class=""><div class="">Dear all, I try to recompile my learn_ham.sieve script, which fails with the message</div><div class=""><br class=""></div><div class=""><a href="mailto:root@ida" class="">root@ida</a>:/etc/dovecot# sievec sieve-scripts/report-ham.sieve </div><div class=""><br class=""></div><pre class="">report-ham: line 1: error: require command: unknown Sieve capability `vnd.dovecot.pipe'.</pre><pre class="">report-ham: line 1: error: require command: unknown Sieve capability `imapsieve'.</pre><pre class="">report-ham: line 19: error: unknown command 'pipe' (only reported once at first occurrence).</pre><pre class="">report-ham: error: validation failed.</pre><pre class="">sievec(root): Fatal: failed to compile sieve script 'sieve-scripts/report-ham.sieve'</pre><div class=""><br class=""></div><div class="">Yes, in conf.d/20-imap.conf, imapsieve and vnd.dovecot.pipe are explicitly enabled:</div><div class=""><br class=""></div><pre class="">protocol imap {</pre><pre class="">  mail_plugins = $mail_plugins imap_sieve imap_acl</pre><pre class="">  mail_max_userip_connections = 50</pre><pre class=""><br class=""></pre><pre class="">plugin {</pre><pre class="">sieve_plugins = sieve_imapsieve sieve_extprograms</pre><pre class="">  # From elsewhere to Spam folder</pre><pre class="">  imapsieve_mailbox1_name = Spam</pre><pre class="">  imapsieve_mailbox1_causes = COPY</pre><pre class="">  imapsieve_mailbox1_before = file:/etc/dovecot/sieve-scripts/report-spam.sieve</pre><pre class="">  # From Spam folder to elsewhere</pre><pre class="">  imapsieve_mailbox2_name = *</pre><pre class="">  imapsieve_mailbox2_from = Spam</pre><pre class="">  imapsieve_mailbox2_causes = COPY</pre><pre class="">  imapsieve_mailbox2_before = file:/etc/dovecot/sieve-scripts/report-ham.sieve</pre><pre class="">#</pre><pre class="">sieve_pipe_bin_dir = /etc/dovecot/sieve-scripts</pre><pre class="">sieve_global_extensions = +vnd.dovecot.execute +vnd.dovecot.pipe</pre><pre class=""><br class=""></pre><pre class="">      }</pre><pre class="">}</pre><pre class=""><br class=""></pre><pre class=""><br class=""></pre><div class="">I am obviously overlooking something here, but what?</div><div class=""><br class=""></div><div class="">Any hints will be greatly appreciated!</div><div class=""><br class=""></div><div class="">Johannes</div><div class=""></div></div>
</div></blockquote></div><br class=""></div></body></html>