[Dovecot] Problem with sieve: Keep: Generic Error

Allan Cassaro allan.cassaro at gmail.com
Mon Dec 15 15:43:07 EET 2008


On Mon, Dec 15, 2008 at 11:27 AM, Thomas Siebert <siebert at et.rub.de> wrote:
> OK, finally I tracked that bug down. The underlying problem is as I supposed
> namespacing (my namespace prefix is "INBOX."). In sieve_keep (sieve-cmu.c),
> the mailbox name is fetched from sieve_msgdata_t and then transferred to
> deliver_save (deliver.c). The problem is, that the default mailbox name in
> sieve_msgdata_t is - according to my namespace - "INBOX.". But deliver_save
> and mailbox_open_or_create_synced don't like that trailing dot, which leads
> to an error. This leads to default saving in the user's inbox, so in fact
> there happens what would happen anyways - but there's an error put out.
>
> Generally, I think that this should be fixed in deliver which should strip
> trailing separators automatically when needed.
> Also I think that saving to INBOX instead of some other folder should be a
> no error but a warning. It should also be considered that for now, if using
> plus-extensions with delivers' -n option, when a folder doesn't exist and
> the mail is put into INBOX instead, an error is put out - although being
> perfectly desired behavior. Deliver should put out some warning in the log
> file instead of "/* silently store to the INBOX instead */" at line 225 and
> then leave without error code.
>
>
> Regards,
> Thomas
>
>> -----Original Message-----
>> From: dovecot-bounces+siebert+lists=et.rub.de at dovecot.org
>> [mailto:dovecot-bounces+siebert+lists=et.rub.de at dovecot.org] On Behalf
>> Of Timo Sirainen
>> Sent: Saturday, December 13, 2008 6:37 AM
>> To: Thomas Siebert
>> Cc: 'Dovecot Mailing List'
>> Subject: Re: [Dovecot] Problem with sieve: Keep: Generic Error
>>
>> Doesn't it log anything else? I think that "Generic error" is usually
>> logged only after the real error message.
>>
>> On Fri, 2008-12-12 at 16:39 +0100, Thomas Siebert wrote:
>> > OK, now i compiled the latest debian version (1.1.7 from
>> > ftp://ftp.debian.org/debian/pool/main/d/dovecot/) myself and I still
>> > get the same error.
>> >
>> > Any ideas, Timo? ;-)
>> >
>> >
>> >
>> > > > -----Original Message-----
>> > > > From: dovecot-bounces+siebert+lists=et.rub.de at dovecot.org
>> > > > [mailto:dovecot-bounces+siebert+lists=et.rub.de at dovecot.org] On
>> > > Behalf
>> > > > Of Thomas Siebert
>> > > > Sent: Wednesday, December 03, 2008 3:15 AM
>> > > > To: dovecot at dovecot.org
>> > > > Subject: [Dovecot] Problem with sieve: Keep: Generic Error
>> > > >
>> > > > Hi,
>> > > >
>> > > > i came across a strange error message in Ubuntu 8.10s package
>> > > (Dovecot
>> > > > 1.1.4) regarding sieve:
>> > > >         sieve runtime error: Keep: Generic Error
>> > > >         sieve_execute_bytecode(/etc/dovecot/sieve/default.sievec)
>> failed
>> > > >
>> > > > Note that the Sieve Scripts are basically executed fine and
>> > > > working fine.
>> > > > After a lot of testing I suppose the following: "keep" doesn't
>> > > > detect the private namespace I have to use
>> > > > (courier-compatibility...), thus
>> > > sieve
>> > > > fails
>> > > > to do "keep", the message is handed back to dovecot-deliver which
>> > > does
>> > > > a
>> > > > "keep"-similar action itself. If I have a script with "keep;" as
>> > > > the only command, I get this error message. If my script is
>> > > > totally blank
>> > > (i.e.
>> > > > implicit keep only), I get the same error. But if there's no
>> > > > implicit or explicit "keep", e.g. "fileinto INBOX;" as only
>> > > > command, there's no error.
>> > > > Also IMAP-Folders, e.g. "fileinto INBOX.Test", work.
>> > > >
>> > > > Unfortunately, "fileinto INBOX" as default is no option for me,
>> as
>> > > > I use a delimiter and want to let deliver put the mails into the
>> > > > according IMAP-Folders.
>> > > >
>> > > > Is this a known bug? Any Ideas?
>> > > >
>> > > >
>> > > > Thanks,
>> > > > Thomas
>> > > >
>> > > >
>> > > > Here's my dovecot -n output:
>> > > > log_timestamp: %Y-%m-%d %H:%M:%S
>> > > > protocols: imap imaps pop3 pop3s
>> > > > ssl_cert_file: /etc/ssl/certs/mail_cip.pem
>> > > > ssl_key_file: /etc/ssl/private/mail_cip.key
>> > > > disable_plaintext_auth: no
>> > > > login_dir: /var/run/dovecot/login
>> > > > login_executable(default): /usr/lib/dovecot/imap-login
>> > > > login_executable(imap): /usr/lib/dovecot/imap-login
>> > > > login_executable(pop3): /usr/lib/dovecot/pop3-login
>> > > > first_valid_uid: 501
>> > > > last_valid_uid: 501
>> > > > first_valid_gid: 501
>> > > > last_valid_gid: 501
>> > > > mail_privileged_group: mail
>> > > > mail_uid: 501
>> > > > mail_gid: 501
>> > > > mail_location: maildir:~/Maildir
>> > > > mail_executable(default): /usr/lib/dovecot/imap
>> > > > mail_executable(imap): /usr/lib/dovecot/imap
>> > > > mail_executable(pop3): /usr/lib/dovecot/pop3
>> > > > mail_plugins(default): acl quota imap_quota
>> > > > mail_plugins(imap): acl quota imap_quota
>> > > > mail_plugins(pop3): quota
>> > > > mail_plugin_dir(default): /usr/lib/dovecot/modules/imap
>> > > > mail_plugin_dir(imap): /usr/lib/dovecot/modules/imap
>> > > > mail_plugin_dir(pop3): /usr/lib/dovecot/modules/pop3
>> > > > imap_client_workarounds(default): delay-newmail netscape-eoh
>> > > > imap_client_workarounds(imap): delay-newmail netscape-eoh
>> > > > imap_client_workarounds(pop3):
>> > > > pop3_uidl_format(default): %08Xu%08Xv
>> > > > pop3_uidl_format(imap): %08Xu%08Xv
>> > > > pop3_uidl_format(pop3): %f
>> > > > pop3_client_workarounds(default):
>> > > > pop3_client_workarounds(imap):
>> > > > pop3_client_workarounds(pop3): outlook-no-nuls oe-ns-eoh
>> > > > namespace:
>> > > >   type: private
>> > > >   prefix: INBOX.
>> > > >   inbox: yes
>> > > >   list: yes
>> > > >   subscriptions: yes
>> > > > auth default:
>> > > >   mechanisms: plain login
>> > > >   passdb:
>> > > >     driver: ldap
>> > > >     args: /etc/dovecot/dovecot-ldap.conf
>> > > >   userdb:
>> > > >     driver: prefetch
>> > > >   userdb:
>> > > >     driver: ldap
>> > > >     args: /etc/dovecot/dovecot-ldap.conf
>> > > >   socket:
>> > > >     type: listen
>> > > >     client:
>> > > >       path: /var/spool/postfix/private/auth
>> > > >       mode: 384
>> > > >       user: postfix
>> > > >     master:
>> > > >       path: /var/run/dovecot/auth-master
>> > > >       mode: 384
>> > > >       user: vmail
>> > > > plugin:
>> > > >   quota: maildir:User quota
>> > > >   quota_rule: *:storage=100M
>> > > >   quota_rule2: *:messages=5000
>> > > >   quota_warning: storage=95%% /etc/dovecot/quota_warn_size.sh 95
>> > > >   quota_warning2: storage=90%% /etc/dovecot/quota_warn_size.sh 90
>> > > >   quota_warning3: storage=80%% /etc/dovecot/quota_warn_size.sh 80
>> > > >   quota_warning4: messages=95%% /etc/dovecot/quota_warn_count.sh
>> 95
>> > > >   quota_warning5: messages=90%% /etc/dovecot/quota_warn_count.sh
>> 90
>> > > >   quota_warning6: messages=80%% /etc/dovecot/quota_warn_count.sh
>> 80
>> > > >   acl: vfile:/etc/dovecot/acls:cache_secs=300

Hi Thomas,
In you config you don't define a "separetor". If you define a
separetor that error persists?

namespace private {
  separator = .
  prefix = INBOX.
  inbox = yes
}

Regards.


More information about the dovecot mailing list