Re: [Dovecot] LMTP logging

2013-02-24 Thread Peter Rindfuss

Am 24.02.2013 16:08, schrieb Timo Sirainen:

On 22.2.2013, at 22.20, Peter Rindfuss 
wrote:


Am 22.02.2013 15:50, schrieb Timo Sirainen:

On Fri, 2013-02-22 at 15:32 +0100, Peter Rindfuss wrote:

Hi,

Is there a way (in Dovecot 2.1.14) to sent LMTP log entries and
IMAP log entries to different files?  I know I could achieve
this with syslog-ng, but as LDA has a log file of its own, I am
wondering if this is possible with LMTP as well. I apologize if
I missed something in the wiki.


This should work:

service lmtp { executable = lmtp -L } protocol lmtp { log_path =
.. }



Thanks, it works ... but now LMTP is logged to both the main log
and the lmtp log.


In what way? The exact same messages? If they go through syslog then
that's possible, but not if Dovecot logs directly to a file. Dovecot
doesn't even have code to be able to to log to two places at the same
time.



I thought I had restarted dovecot after adding "lmtp -L", but I might 
have forgotten, or reloaded instead of restarted. Anyway, what I saw was 
distinct LMTP log entries in both files (not for the same messages). 
After a complete restart of dovecot, everything goes where it should go.


Thanks, Peter





Re: [Dovecot] LMTP logging

2013-02-22 Thread Peter Rindfuss

Am 22.02.2013 15:50, schrieb Timo Sirainen:

On Fri, 2013-02-22 at 15:32 +0100, Peter Rindfuss wrote:

Hi,

Is there a way (in Dovecot 2.1.14) to sent LMTP log entries and IMAP log
entries to different files?  I know I could achieve this with syslog-ng,
but as LDA has a log file of its own, I am wondering if this is possible
with LMTP as well. I apologize if I missed something in the wiki.


This should work:

service lmtp {
   executable = lmtp -L
}
protocol lmtp {
   log_path = ..
}



Thanks, it works ... but now LMTP is logged to both the main log and the 
lmtp log.


Peter



[Dovecot] LMTP logging

2013-02-22 Thread Peter Rindfuss

Hi,

Is there a way (in Dovecot 2.1.14) to sent LMTP log entries and IMAP log 
entries to different files?  I know I could achieve this with syslog-ng, 
but as LDA has a log file of its own, I am wondering if this is possible 
with LMTP as well. I apologize if I missed something in the wiki.


Thanks, Peter


Re: [Dovecot] sieve /editheader / addheader :last crash

2013-02-09 Thread Peter Rindfuss

Am 2013-02-09 09:27, schrieb Stephan Bosch:


I'm unable to reproduce this so far. Could you show me more details of
your setup?

* Output from: dovecot -n
* Your exact test message
* Your exact test Sieve script
* The sieve-test command line



Hi Stephan,

attached are "dovecot -n", a test message, and three very similar 
scripts one of which causes the crash and two not.


I'm inclined to say that the message itself does not matter.

This ist the sieve-test cmd line:
 sieve-test -t - -a 'b...@wzb.eu' -l /wzb/mail/brot/Maildir -e -x 
+editheader /wzb/mail/brot/sieve/{bad|good1|good2}.sieve mail


Initially I encountered the problem in real deliveries, not in 
sieve-test. It is always reproducible.


Best, Peter



#
# 2013-02-08 PR
#
# causes crash
#

require ["editheader"];

addheader :last "X-Someheader" "Crash";

deleteheader  "X-Otherheader";


# 2.1.14 (443ff272317f): /etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-5-amd64 x86_64 Debian 6.0.6 
auth_mechanisms = plain login
auth_worker_max_count = 60
default_client_limit = 2000
default_process_limit = 200
disable_plaintext_auth = no
first_valid_gid = 8
first_valid_uid = 8
hostname = imap.wzb.eu
last_valid_gid = 8
last_valid_uid = 8
listen = *
log_path = /var/log/dovecot/dovecot.log
log_timestamp = "%Y-%m-%d %H:%M:%S "
mail_gid = mail
mail_location = maildir:~/Maildir
mail_privileged_group = mail
mail_uid = 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 ihave editheader
namespace inbox {
  inbox = yes
  location = 
  mailbox Drafts {
special_use = \Drafts
  }
  mailbox Junk {
special_use = \Junk
  }
  mailbox Sent {
special_use = \Sent
  }
  mailbox "Sent Messages" {
special_use = \Sent
  }
  mailbox Trash {
special_use = \Trash
  }
  prefix = INBOX.
  separator = .
  type = private
}
passdb {
  args = /etc/dovecot/dovecot-ldap.conf.ext
  driver = ldap
}
plugin {
  fts = squat
  fts_squat = partial=4 full=10
  recipient_delimiter = +
  sieve = ~/.dovecot.sieve
  sieve_after = /var/lib/dovecot/sieve/after.sieve
  sieve_default = /var/lib/dovecot/sieve/default.sieve
  sieve_dir = ~/sieve
  sieve_extensions = +editheader
}
postmaster_address = r...@calypso.wzb.eu
protocols = " imap lmtp sieve pop3"
service auth {
  unix_listener auth-userdb {
group = mail
mode = 0600
user = mail
  }
}
service imap-login {
  inet_listener imap {
port = 143
  }
  inet_listener imaps {
port = 993
ssl = yes
  }
  process_limit = 1024
  process_min_avail = 10
}
service imap {
  process_limit = 8192
}
service lmtp {
  inet_listener lmtp {
address = 193.174.6.5 127.0.0.1
port = 24
  }
  process_min_avail = 10
  user = mail
}
service managesieve-login {
  inet_listener sieve {
port = 4190
  }
}
service managesieve {
  process_limit = 2048
}
service pop3-login {
  inet_listener pop3 {
port = 10110
  }
  inet_listener pop3s {
port = 995
ssl = yes
  }
}
service pop3 {
  process_limit = 128
}
ssl_cert = #
# 2013-02-08 PR
#
# does not crash
#

require ["editheader"];

addheader "X-Someheader" "No-Crash";

deleteheader  "X-Otherheader";


#
# 2013-02-08 PR
#
# does not cause crash
#

require ["editheader"];

deleteheader  "X-Otherheader";

addheader :last "X-Someheader" "No-Crash";
Envelope-To: 
Return-Path: 
Received: from athene.wzb.eu ([193.174.6.3])
by imap.wzb.eu (Dovecot) with LMTP id RnDFD4CYElHhQgAAHSXelQ
for ; Wed, 06 Feb 2013 18:53:04 +0100
Received: from mout.web.de ([212.227.15.3])
by athene.wzb.eu with esmtp (Exim 4.75)
(envelope-from )
id 1U39B4-0001f9-TT
for b...@wzb.eu; Wed, 06 Feb 2013 18:53:04 +0100
Received: from 3capp-webde-bs15.server.lan ([172.19.170.15]) by
 mriweb.server.lan (mriweb002) with ESMTPA (Nemesis) id
 0MLkbN-1U2sKP38b5-000Y67 for ; Wed, 06 Feb 2013 18:52:58 +0100
Received: from [193.174.6.50] by 3capp-webde-bs15.server.lan with HTTP; Wed
 Feb 06 18:52:58 CET 2013
MIME-Version: 1.0
Message-ID: 

From: =?UTF-8?Q?=22Peter_Rindfu=C3=9F=22?= 
To: b...@wzb.eu
Subject: +++ sieve addheader :last +++
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 7bit
Date: Wed, 6 Feb 2013 18:52:58 +0100 (CET)
Sensitivity: Normal
X-Provags-ID: V03:K0:6lCMlXLjuBgCnXkcBwJTgQbIiiRb5Bd0a1AQQ7a/uQK
 sCDK/KfOHBK7WQnRs8SlTj42min3T6DI7FxgagEA0O/CWMdINx
 pVZopA2fc2ARvdVtcP31abI/v2eKP+iKOREELDoblEkhnjIqJ0
 iuQJFBB256fg3hhrAe+mNhbbk5wTxlm2cX9DNqrNdwqSG62Xr5
 XZiQr8dWzAqdxEqbuLhf0wekHpkA4nnmZpKUIipkXhyt6GwYqa
 CBgZ+dIGF4JTVxaSoexgptMyl3fmmsmBD32J6Oj6+Nt57j548p
 cB5KEaCWmJlgWQHKcNuQUMGFVe3
X-WZB-Sender: peter.rindf...@web.de
X-WZB-Virus-Scanned: by Clam AntiVirus and F-Secure AntiVirus at athene.wzb.eu
X-WZB-Spam-Score: 7
X-WZB-Spam-Report: Content analysis details:
 
  pts rule name  description
  -- 

[Dovecot] sieve /editheader / addheader :last crash

2013-02-08 Thread Peter Rindfuss

Hi Everybody,

I'm using dovecot 2.1.14 from http://xi.rename-it.nl/debian/ with debian 
squeeze stable.


In general, sieve works fine for me, but "addheader :last ..." from the 
editheader extension causes a crash when it processes a message.


I was able to narrow this down a bit:
It only happens if "addheader :last" is the first editheader command 
executed in a script. If it is preceded by any "deleteheader" or 
"addheader" without ":last", everything is fine.


This is what I get from sieve-test when it crashes:

sieve-test(root): Panic: file istream.c: line 133 (i_stream_read): 
assertion failed: (_stream->skip != _stream->pos)


sieve-test(root): Error: Raw backtrace: 
/usr/lib/dovecot/libdovecot.so.0(+0x4881a) [0x7f5e0b37681a] -> 
/usr/lib/dovecot/libdovecot.so.0(default_fatal_handler+0x32) 
[0x7f5e0b376902] -> /usr/lib/dovecot/libdovecot.so.0(i_error+0) 
[0x7f5e0b349f7f] -> 
/usr/lib/dovecot/libdovecot.so.0(i_stream_read+0x17c) [0x7f5e0b37da9c] 
-> /usr/lib/dovecot/libdovecot.so.0(+0x51453) [0x7f5e0b37f453] -> 
/usr/lib/dovecot/libdovecot.so.0(+0x5150e) [0x7f5e0b37f50e] -> 
/usr/lib/dovecot/libdovecot.so.0(i_stream_read+0x69) [0x7f5e0b37d989] -> 
/usr/lib/dovecot/libdovecot.so.0(+0x53fe1) [0x7f5e0b381fe1] -> 
/usr/lib/dovecot/libdovecot.so.0(i_stream_read+0x69) [0x7f5e0b37d989] -> 
/usr/lib/dovecot/libdovecot.so.0(i_stream_read_data+0x52) 
[0x7f5e0b37dc72] -> 
/usr/lib/dovecot/libdovecot.so.0(io_stream_copy+0x41) [0x7f5e0b38ae21] 
-> /usr/lib/dovecot/libdovecot.so.0(+0x5e1de) [0x7f5e0b38c1de] -> 
/usr/lib/dovecot/libdovecot.so.0(o_stream_send_istream+0x33) 
[0x7f5e0b38acb3] -> 
/usr/lib/dovecot/libdovecot-storage.so.0(maildir_save_continue+0x38) 
[0x7f5e0be0caf8] -> 
/usr/lib/dovecot/libdovecot-storage.so.0(mail_storage_copy+0xb8) 
[0x7f5e0be376d8] -> 
/usr/lib/dovecot/libdovecot-storage.so.0(maildir_copy+0x56) 
[0x7f5e0be086c6] -> 
/usr/lib/dovecot/libdovecot-storage.so.0(mailbox_copy+0x4a) 
[0x7f5e0be3ce9a] -> /usr/lib/dovecot/libdovecot-sieve.so.0(+0x3fa66) 
[0x7f5e0c103a66] -> /usr/lib/dovecot/libdovecot-sieve.so.0(+0x366b4) 
[0x7f5e0c0fa6b4] -> 
/usr/lib/dovecot/libdovecot-sieve.so.0(sieve_result_execute+0x3ff) 
[0x7f5e0c0fabef] -> 
/usr/lib/dovecot/libdovecot-sieve.so.0(sieve_execute+0x56) 
[0x7f5e0c10b456] -> sieve-test(main+0x73e) [0x403a5e] -> 
/lib/libc.so.6(__libc_start_main+0xfd) [0x7f5e0abdec8d] -> sieve-test() 
[0x403219]

Aborted

Best regards
Peter