Struggling with sieve, fileinto and variables.
Stephan Bosch
stephan at rename-it.nl
Thu May 31 11:04:05 EEST 2018
Op 30/05/2018 om 21:15 schreef Barry Pearce:
>
> Thanks for that. Turns out it was an issue with exim stripping the
> local part suffix from the envelope before passing over lmtp to
> dovecot. Fixed in the exim router config!
>
> Although if you turn on trace with spamtest it does result in a crash
> during mail receipt:
>
> lmtp(test at test.net)<7988><cDK3ADztDls0HwAANIsFaQ>: Panic: Unsupported
> 0x30 specifier starting at #38 in 'extracted score=%.3f, max=%.3f,
> ratio=%.0f %%'
>
> lmtp(test at test.net)<7988><cDK3ADztDls0HwAANIsFaQ>: Error: Raw
> backtrace: /usr/lib/dovecot/libdovecot.so.0(+0xc7e87) [0x7fa1c8cf1e87]
> -> /usr/lib/dovecot/libdovecot.so.0(+0xc7f4a) [0x7fa1c8cf1f4a] ->
> /usr/lib/dovecot/libdovecot.so.0(i_fatal+0) [0x7fa1c8c5ebc9] ->
> /usr/lib/dovecot/libdovecot.so.0(+ [snip...]
>
> lmtp(test at test.net)<7988><cDK3ADztDls0HwAANIsFaQ>: Fatal: master:
> service(lmtp): child 7988 killed with signal 6 (core not dumped -
> https://dovecot.org/bugreport.html#coredumps - set
> /proc/sys/fs/suid_dumpable to 2)
>
Apparently, this is fixed for v2.3.2 already.
Regards,
Stephan.
> At least my problem is fixed - so thank you!
>
> ------------------------------------------------------------------------
> *From:* Stephan Bosch <stephan at rename-it.nl>
> *Sent:* 30 May 2018 13:41
> *To:* Barry Pearce; dovecot at dovecot.org
> *Subject:* Re: Struggling with sieve, fileinto and variables.
>
>
> Op 30-5-2018 om 14:01 schreef Barry Pearce:
> > Hi,
> >
> > Im on Manjaro linux fully up to date running
> >
> > dovecot 2.3.1-2
> > pigeonhole 0.5.1-2
> >
> >
> > All is running well except I am having problems with fileinto - it
> > refuses to use variables, and mailboxexists is also failing for me.
> >
> > Im just dealing with plus addressing - should be simple but the
> > behaviour Im experiencing isnt right.
> >
> > require ["variables", "envelope", "fileinto", "subaddress",
> > "mailbox"];
> > if envelope :matches :detail "to" "*" {
> > set :lower "name" "${1}";
> > }
> > fileinto :create "folder3";
> >
> >
> > This works, but changing the last line to:
> >
> > fileinto :create "${name}";
> >
> >
> > fails and files into inbox. As does:
> >
> > fileinto :create "${1}";
> >
> >
> > It makes no difference if the fileinto is placed inside the if
> > statement or otherwise. Using sieve-test suggests the basic scriptit
> > should work and traces show the right action.
> >
> > On a related matter the script Im actually trying to get to work is:
> >
> > require ["variables", "envelope", "fileinto", "subaddress",
> > "mailbox"];
> >
> > if envelope :matches :detail "to" "*" {
> > set :lower "name" "${1}";
> > }
> > if mailboxexists "${name}" {
> > fileinto :create "${name}";
> > }
> >
> >
> > But fails and files in the inbox.
>
> This happens for a reason, which you can either find in your syslog or
> in the user log file (e.g. ~/.dovecot.sieve -> ~/.dovecot.sieve.log).
>
>
> > Modifying the script to:
> >
> > require ["variables", "envelope", "fileinto", "subaddress",
> > "mailbox"];
> >
> > if envelope :matches :detail "to" "*" {
> > set :lower "name" "${1}";
> > }
> >
> > if mailboxexists "${name}" {
> > fileinto :create "folder7";
> > } else {
> > fileinto :create "folder8";
> > }
> >
> >
> > Files into folder8. So the mailboxexists is failing.
> >
> > ## Started executing script 'plus-addressing'
> > 3: envelope test
> > 3: starting `:matches' match with `i;ascii-casemap' comparator:
> > 3: getting `to' part from message envelope
> > 3: extracting `detail' part from address <test+folder4 at test.net>
> > 3: matching value `folder4'
> > 3: with key `*' => 1
> > 3: finishing match with result: matched
> > 3: jump if result is false
> > 3: not jumping
> > 4: set command
> > 7: modify :lower "folder4" => "folder4"
> > 7: assign `name' [0] = "folder4"
> > 7: mailboxexists test
> > 7: mailbox `folder4' cannot be opened
> > 7: some mailboxes are unavailable
> > 7: jump if result is false
> > 7: jumping to line 9
> > 10: fileinto action
> > 10: store message in mailbox `folder8'
> > ## Finished executing script 'plus-addressing'
> >
> > Here folder4 actually does exist - so the sieve-test confirms that
> > issue. Im at a loss as to whats going on. Im particularly perplexed
> > by the difference in behaviour between sieve-test and the result under
> > the live server.
>
> You can also get a trace for the live server:
> https://wiki2.dovecot.org/Pigeonhole/Sieve/Configuration#Trace_Debugging
>
> Regards,
>
> Stephan.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://dovecot.org/pipermail/dovecot/attachments/20180531/3d23f1c6/attachment.html>
More information about the dovecot
mailing list