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...@dovecot.org > [mailto:dovecot-bounces+siebert+lists=et.rub...@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...@dovecot.org > > > > [mailto:dovecot-bounces+siebert+lists=et.rub...@dovecot.org] On > > > Behalf > > > > Of Thomas Siebert > > > > Sent: Wednesday, December 03, 2008 3:15 AM > > > > To: dovecot@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 > > > > > > > > >