Gotcha!!!!!!!! It looks like you nailed it John! (Log and config attached)
The log looks now very different and my log entry is also shown. Now I can continue working at this point. Adjusting the events i.e. The reason was actually simple - but I spent a few evenings searching and was blind. I could have figured it out on my own! Thank you so much John for took such care of this issue!!!!! Jens imap([email protected]): Debug: Loading modules from directory: /usr/lib/dovecot/modules imap([email protected]): Debug: Module loaded: /usr/lib/dovecot/modules/lib95_imap_sieve_plugin.so imap([email protected]): Debug: Effective uid=10000, gid=10000, home=/var/mail/vhosts/demo.example/info imap([email protected]): Debug: open(/proc/self/io) failed: Permission denied imap([email protected]): Debug: Namespace inbox: type=private, prefix=INBOX/, sep=/, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:~/Maildir imap([email protected]): Debug: maildir++: root=/var/mail/vhosts/demo.example/info/Maildir, index=, indexpvt=, control=, inbox=/var/mail/vhosts/demo.example/info/Maildir, alt= imap([email protected]): Debug: Namespace : type=private, prefix=, sep=, inbox=no, hidden=yes, list=no, subscriptions=no location=fail::LAYOUT=none imap([email protected]): Debug: none: root=, index=, indexpvt=, control=, inbox=, alt= imap([email protected]): Debug: Mailbox INBOX/Junk: Mailbox opened imap([email protected]): Debug: imapsieve: mailbox INBOX/Junk: APPEND event imap([email protected]): Debug: duplicate db: Initialize imap([email protected]): Debug: sieve: Pigeonhole version 0.5.19 (4eae2f79) initializing imap([email protected]): Debug: sieve: include: sieve_global is not set; it is currently not possible to include `:global' scripts. imap([email protected]): Debug: sieve: Sieve imapsieve plugin for Pigeonhole version 0.5.19 (4eae2f79) loaded imap([email protected]): Debug: sieve: Sieve Extprograms plugin for Pigeonhole version 0.5.19 (4eae2f79) loaded imap([email protected]): Debug: imapsieve: Static mailbox rule [1]: mailbox=`INBOX/Junk' from=`*' causes=(COPY APPEND) => before=`file:/usr/lib/dovecot/sieve/report-spam.sieve' after=(none) imap([email protected]): Debug: imapsieve: Static mailbox rule [2]: mailbox=`*' from=`INBOX/Junk' causes=(COPY APPEND) => before=`file:/usr/lib/dovecot/sieve/report-ham.sieve' after=(none) imap([email protected]): Debug: imapsieve: Matched static mailbox rule [2] imap([email protected]): Debug: imapsieve: Matched static mailbox rule [1] imap([email protected]): Debug: sieve: file storage: Using Sieve script path: /usr/lib/dovecot/sieve/report-spam.sieve imap([email protected]): Debug: sieve: file storage: script: Opened script `report-spam' from `/usr/lib/dovecot/sieve/report-spam.sieve' imap([email protected]): Debug: sieve: file storage: Using Sieve script path: /usr/lib/dovecot/sieve/report-ham.sieve imap([email protected]): Debug: sieve: file storage: script: Opened script `report-ham' from `/usr/lib/dovecot/sieve/report-ham.sieve' imap([email protected]): Debug: Mailbox INBOX/Junk: Mailbox opened imap([email protected]): Debug: sieve: multi-script: Start execute sequence imap([email protected]): Debug: sieve: Opening script 1 of 2 from `/usr/lib/dovecot/sieve/report-spam.sieve' imap([email protected]): Debug: sieve: Loading script /usr/lib/dovecot/sieve/report-spam.sieve imap([email protected]): Debug: sieve: Script binary /usr/lib/dovecot/sieve/report-spam.svbin successfully loaded imap([email protected]): Debug: sieve: binary /usr/lib/dovecot/sieve/report-spam.svbin: save: not saving binary, because it is already stored imap([email protected]): Debug: sieve: Executing script from `/usr/lib/dovecot/sieve/report-spam.svbin' imap([email protected]): Debug: sieve: multi-script: Run script `/usr/lib/dovecot/sieve/report-spam.svbin' imap([email protected]): Debug: sieve: Started running script `/usr/lib/dovecot/sieve/report-spam.svbin' imap([email protected]): sieve: DEBUG: report-spam.sieve was running! imap([email protected]): Debug: sieve: Finished running script `/usr/lib/dovecot/sieve/report-spam.svbin' (status=ok, resource usage: no usage recorded) imap([email protected]): Debug: sieve: multi-script: Execute result imap([email protected]): Debug: sieve: uid=3: Executing result (status=ok, commit=no) imap([email protected]): Debug: sieve: uid=3: Starting execution of actions imap([email protected]): Debug: sieve: uid=3: Executing actions imap([email protected]): Debug: sieve: uid=3: Executing pipe action imap([email protected]): Debug: sieve: action pipe: running program: sa-learn-spam.sh imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-spam.sh: Created imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-spam.sh: Pass environment: [email protected] imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-spam.sh: Pass environment: HOME=/var/mail/vhosts/demo.example/info imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-spam.sh: Pass environment: HOST=ServerIV-home.demo.example imap([email protected]): Debug: Mailbox INBOX/Junk: UID 3: Opened mail because: mail stream imap([email protected]): Debug: sieve: uid=3: Finished executing pipe action (status=ok, keep=implicit) imap([email protected]): Debug: sieve: uid=3: Finished executing actions (status=ok, keep=implicit, executed=yes) imap([email protected]): Debug: sieve: uid=3: Finished executing result (no commit, status=ok, keep=yes) imap([email protected]): Debug: sieve: multi-script: Sequence active imap([email protected]): Debug: sieve: Opening script 2 of 2 from `/usr/lib/dovecot/sieve/report-ham.sieve' imap([email protected]): Debug: sieve: Loading script /usr/lib/dovecot/sieve/report-ham.sieve imap([email protected]): Debug: sieve: Script binary /usr/lib/dovecot/sieve/report-ham.svbin successfully loaded imap([email protected]): Debug: sieve: binary /usr/lib/dovecot/sieve/report-ham.svbin: save: not saving binary, because it is already stored imap([email protected]): Debug: sieve: Executing script from `/usr/lib/dovecot/sieve/report-ham.svbin' imap([email protected]): Debug: sieve: multi-script: Run script `/usr/lib/dovecot/sieve/report-ham.svbin' imap([email protected]): Debug: sieve: Started running script `/usr/lib/dovecot/sieve/report-ham.svbin' imap([email protected]): Debug: sieve: Finished running script `/usr/lib/dovecot/sieve/report-ham.svbin' (status=ok, resource usage: no usage recorded) imap([email protected]): Debug: sieve: multi-script: Execute result imap([email protected]): Debug: sieve: uid=3: Executing result (status=ok, commit=no) imap([email protected]): Debug: sieve: uid=3: Starting execution of actions imap([email protected]): Debug: sieve: uid=3: Executing actions imap([email protected]): Debug: sieve: uid=3: Executing pipe action imap([email protected]): Debug: sieve: action pipe: running program: sa-learn-ham.sh imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-ham.sh: Created imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-ham.sh: Pass environment: [email protected] imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-ham.sh: Pass environment: HOME=/var/mail/vhosts/demo.example/info imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-ham.sh: Pass environment: HOST=ServerIV-home.demo.example imap([email protected]): Debug: sieve: uid=3: Finished executing pipe action (status=ok, keep=implicit) imap([email protected]): Debug: sieve: uid=3: Finished executing actions (status=ok, keep=implicit, executed=yes) imap([email protected]): Debug: sieve: uid=3: Finished executing result (no commit, status=ok, keep=yes) imap([email protected]): Debug: sieve: multi-script: Sequence active imap([email protected]): Debug: sieve: multi-script: Finishing sequence (status=ok) imap([email protected]): Debug: sieve: uid=3: Executing result (status=ok, commit=yes) imap([email protected]): Debug: sieve: uid=3: Starting execution of actions imap([email protected]): Debug: sieve: uid=3: Executing actions imap([email protected]): Debug: sieve: uid=3: Finished executing actions (status=ok, keep=implicit, executed=yes) imap([email protected]): Debug: sieve: uid=3: Execute implicit keep (status=ok) imap([email protected]): Debug: sieve: uid=3: Start storing into mailbox INBOX/Junk imap([email protected]): Debug: sieve: uid=3: Executing implicit keep action imap([email protected]): Debug: sieve: uid=3: Execute storing into mailbox 'INBOX/Junk' imap([email protected]): Debug: Mailbox INBOX/Junk: Mailbox opened imap([email protected]): Debug: sieve: uid=3: Updated existing mail in mailbox 'INBOX/Junk' imap([email protected]): Debug: sieve: uid=3: Finished executing implicit keep action (status=ok) imap([email protected]): Debug: sieve: uid=3: Finalizing actions imap([email protected]): Debug: sieve: uid=3: Finalize pipe action (status=ok, action_status=ok, commit_status=ok, pre-commit=yes) imap([email protected]): Debug: sieve: uid=3: Commit pipe action imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-spam.sh: Establishing connection imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-spam.sh: Forked child process imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-spam.sh (2120): Connected to program imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-spam.sh (2120): Finished streaming payload to program imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-spam.sh (2120): Finished input to program imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-spam.sh (2120): Disconnected imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-spam.sh (2120): Waiting for program to finish after 0 msecs (timeout = 10000 msecs) imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-spam.sh (2120): Child process ended imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-spam.sh (2120): Destroy imap([email protected]): Debug: sieve: uid=3: pipe action: piped message to program `sa-learn-spam.sh' imap([email protected]): Debug: sieve: uid=3: Finalize pipe action (status=ok, action_status=ok, commit_status=ok, pre-commit=yes) imap([email protected]): Debug: sieve: uid=3: Commit pipe action imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-ham.sh: Establishing connection imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-ham.sh: Forked child process imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-ham.sh (2121): Connected to program imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-ham.sh (2121): Finished streaming payload to program imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-ham.sh (2121): Finished input to program imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-ham.sh (2121): Disconnected imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-ham.sh (2121): Waiting for program to finish after 0 msecs (timeout = 10000 msecs) imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-ham.sh (2121): Child process ended imap([email protected]): Debug: program exec:/usr/lib/dovecot/sieve/sa-learn-ham.sh (2121): Destroy imap([email protected]): Debug: sieve: uid=3: pipe action: piped message to program `sa-learn-ham.sh' imap([email protected]): Debug: sieve: uid=3: Finished finalizing actions (status=ok, keep=implicit, committed=yes) imap([email protected]): Debug: sieve: uid=3: Finalize implicit keep (status=ok) imap([email protected]): Debug: sieve: uid=3: Finalize implicit keep action(status=ok, action_status=ok, commit_status=ok) imap([email protected]): Debug: sieve: uid=3: Commit implicit keep action imap([email protected]): Debug: sieve: uid=3: Commit storing into mailbox 'INBOX/Junk' imap([email protected]): Debug: sieve: uid=3: left message in mailbox 'INBOX/Junk' imap([email protected]): Debug: sieve: uid=3: Finish implicit keep action imap([email protected]): Debug: sieve: uid=3: Finishing actions imap([email protected]): Debug: sieve: uid=3: Finish pipe action imap([email protected]): Debug: sieve: uid=3: Finish pipe action imap([email protected]): Debug: sieve: uid=3: Finished executing result (final, status=ok, keep=yes) imap([email protected]): Debug: sieve: multi-script: Sequence finished (status=ok, keep=yes) imap([email protected]): Debug: sieve: multi-script: Destroy imap([email protected]): Debug: Mailbox INBOX/Junk: Mailbox opened imap([email protected])<2107><Zu7qvEEcHyjAqB4a>: Debug: imapsieve: mailbox INBOX: FLAG event (changed flags: \Deleted) imap([email protected])<2107><Zu7qvEEcHyjAqB4a>: Debug: Mailbox INBOX: UID 3: Expunge requested imap([email protected])<2107><Zu7qvEEcHyjAqB4a>: Debug: Mailbox INBOX: UID 3: Mail expunged #dovecot -n # 2.3.19.1 (9b53102964): /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.19 (4eae2f79) # OS: Linux 6.1.0-21-amd64 x86_64 Debian 12.5 # Hostname: ServerIV-home.demo.example auth_mechanisms = plain login mail_debug = yes mail_location = maildir:~/Maildir mail_privileged_group = mail 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 imapsieve vnd.dovecot.imapsieve namespace inbox { hidden = no ignore_on_failure = no inbox = yes list = yes location = mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Junk { auto = subscribe special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox "Sent Messages" { auto = subscribe special_use = \Sent } mailbox Trash { auto = subscribe special_use = \Trash } prefix = INBOX/ separator = / subscriptions = yes type = private } passdb { driver = pam } passdb { args = scheme=CRYPT username_format=%u /etc/dovecot/users driver = passwd-file } plugin { imapsieve_mailbox1_before = file:/usr/lib/dovecot/sieve/report-spam.sieve imapsieve_mailbox1_causes = COPY APPEND imapsieve_mailbox1_name = INBOX/Junk imapsieve_mailbox2_before = file:/usr/lib/dovecot/sieve/report-ham.sieve imapsieve_mailbox2_causes = COPY APPEND imapsieve_mailbox2_from = INBOX/Junk imapsieve_mailbox2_name = * sieve = file:~/sieve;active=~/.dovecot.sieve sieve_after = /etc/dovecot/conf.d/custom-sieve/global_after.sieve sieve_before = /etc/dovecot/conf.d/custom-sieve/global_before.sieve sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.environment +vnd.dovecot.debug sieve_pipe_bin_dir = /usr/lib/dovecot/sieve sieve_plugins = sieve_imapsieve sieve_extprograms } protocols = imap lmtp sieve service auth { unix_listener /var/spool/postfix/private/auth { mode = 0666 } } service lmtp { inet_listener lmtp { address = 127.0.0.1 ::1 port = 24 } } ssl_cert = </etc/dovecot/private/dovecot.pem ssl_client_ca_dir = /etc/ssl/certs ssl_dh = # hidden, use -P to show it ssl_key = # hidden, use -P to show it userdb { driver = passwd } userdb { args = username_format=%u /etc/dovecot/users driver = passwd-file } verbose_proctitle = yes protocol lmtp { mail_plugins = " sieve" } protocol imap { mail_plugins = " imap_sieve" } -----Ursprüngliche Nachricht----- Von: John Fawcett via dovecot <[email protected]> Gesendet: Dienstag, 2. Juli 2024 12:34 An: [email protected] Betreff: Re: AW: AW: AW: AW: IMAPSieve plugin will not run rspamd script Hi Jens just one update and some more insight looking at the code Your causes should be COPY APPEND (whether applying proposed solution (1) or (2). I updated inline below for solution (2). Logic for that: I was testing from Thunderbird which is generating a MOVE event. In the imapsieve plugin code MOVE and COPY are treated almost the same, so my rule with COPY fire on MOVE too. In your case the event you're getting is APPEND, but none of your rules have that as a cause so won't match even if the mailbox matches. John _______________________________________________ dovecot mailing list -- [email protected] To unsubscribe send an email to [email protected]
