Released Pigeonhole v0.4.7 for Dovecot v2.2.16

2015-03-19 Thread Stephan Bosch
Hello Dovecot users,

Here is the final 0.4.7 release. No changes were committed since the
last release candidate.

Changelog v0.4.7:

* editheader extension: Made protection against addition and deletion of
  headers configurable separately. Also, the `Received' and
  `Auto-Submitted' headers are no longer protected against addition by
  default.
* Turned message envelope address parse errors into warnings.
* The interpreter now accepts non-standard domain names, e.g.
  containing '_'.
+ Implemented the Sieve index extension (RFC 5260).
+ Implemented support for the mboxmetadata and servermetadata extensions
  (RFC 5490).
+ Implemented new sieve commands for the doveadm command line utility.
  These commands are currently limited to ManageSieve operations, but
  the other current sieve tools will be migrated to doveadm in the near
  future as well.
+ Added more debug output about binary up-to-date checking.
+ Added script metadata to binary dump output.
- Fixed Sieve script binary up-to-date checking by normalizing the
  script location.
- The Sieve interpreter now flushes the duplicate database during start
  phase of result execution rather than commit phase. This makes sure
  locks on the duplicate database are released as soon as possible,
  preventing contention.
- Performed a few optimizations in the lexical scanner of the language.
- Fixed bug in `:matches' match-type that made a pattern without
  wildcards match as if there were a '*' at the beginning.
- Fixed crash in validation of the string parameter of the comparator
  tag.
- extprograms extension: Made sure supplemental group privileges are
  also dropped. This was a problem reported by Debian lintian.
- Fixed bug in handling of binary errors for action side-effects and
  message overrides.
- file script storage: Restructured storage initialization to address
  backwards compatibility issues.
- dict script storage: Fixed small memory allocation bug.

The release is available as follows:

http://pigeonhole.dovecot.org/releases/2.2/dovecot-2.2-pigeonhole-0.4.7.tar.gz
http://pigeonhole.dovecot.org/releases/2.2/dovecot-2.2-pigeonhole-0.4.7.tar.gz.sig

Refer to http://pigeonhole.dovecot.org and the Dovecot v2.x wiki for
more information. Have fun testing this new release and don't hesitate
to notify me when there are any problems.

Regards,

-- 
Stephan Bosch
step...@rename-it.nl


Re: fast doveadm search results

2015-03-19 Thread Joseph Tam

Steffen Kaiser writes:


e.g. put message-id into mail_always_cache_fields

- From http://dovecot.org/pipermail/dovecot-cvs/2013-May/023261.html

lib-storage: Allow mail_*cache_fields settings to specify any hdr.* fields


... but I belatedly wrote ...


Maybe you can even add these items into the cache upon delivery,
but someone more knowlegable than I would have to help you with that.


The drawback of getting thing in digest form -- you look like a boob
when answering late.  I defer to Steffen's superior knowledge.

Joseph Tam jtam.h...@gmail.com


Re: Patch for doveadm -f table nit (was Re: Dovecot current number of connections being used.)

2015-03-19 Thread Gedalya

On 03/18/2015 08:49 PM, Timo Sirainen wrote:

There's no reason why flow and pager should write headers to stderr because it would always result 
only in a mess. But instead of changing table headers to write to stdout, I think a better fix 
would be to make tab formatter write headers to stderr. Including headers in stdout makes it more 
difficult to write scripts that access the actual data. For example now you can do doveadm 
who -1 | sort and the output will work. If headers were written to stdout you'd have to make 
it more complicated. Also you can now easily specify what you want to do with the headers, 
2/dev/null if you don't care about them or 21 if you want to include them in stdout 
(which works even after |sort).

So, I'll add in my v2.3 TODO that tab formatter should write to stderr..


I've been using -f flow fetch text | sed s/^text=// when training 
spamassasin. Couldn't find a straightforward 'fetch raw message'. Seems 
unnecessarily awkward. Moving headers to stderr would help this, though.


Dovecot Oy merger with Open-Xchange AG

2015-03-19 Thread Timo Sirainen
Hi all,

Today I can finally announce that Dovecot Oy company has merged with 
Open-Xchange AG. This helps us to get more Dovecot developers, support people 
and so on. Most importantly, eventually it should allow me to get back to doing 
what I like the most: Designing new and interesting stuff for Dovecot and 
perfecting the old stuff :) OX is a great match to Dovecot going forward. They 
also really like open source and share our plans for the future. Nothing big 
will change as a result of this merger: Dovecot will stay Dovecot with its own 
name and release schedules. We're not going to force OX and Dovecot to be the 
same product, other than having a somewhat deeper integration between them.

Here are the press release links about it:
http://www.dovecot.fi/open-xchange-and-dovecot-announce-merger-to-create-worlds-leading-open-source-messaging-software-provider/
http://www.open-xchange.com/dovecot
http://www.open-xchange.com/announcements/18


How about an option to disbale headers? (was Re: Patch for doveadm -f table nit)

2015-03-19 Thread Steffen Kaiser

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Thu, 19 Mar 2015, Gedalya wrote:

On 03/18/2015 08:49 PM, Timo Sirainen wrote:
There's no reason why flow and pager should write headers to stderr because 
it would always result only in a mess. But instead of changing table 
headers to write to stdout, I think a better fix would be to make tab 
formatter write headers to stderr. Including headers in stdout makes it 
more difficult to write scripts that access the actual data. For example 
now you can do doveadm who -1 | sort and the output will work. If headers 
were written to stdout you'd have to make it more complicated. Also you can 
now easily specify what you want to do with the headers, 2/dev/null if you 
don't care about them or 21 if you want to include them in stdout (which 
works even after |sort).


doveadm  2 /dev/null
will suppress headers _and_ error messages


So, I'll add in my v2.3 TODO that tab formatter should write to stderr..


I've been using -f flow fetch text | sed s/^text=// when training 
spamassasin. Couldn't find a straightforward 'fetch raw message'. Seems 
unnecessarily awkward. Moving headers to stderr would help this, though.




How about a formatter option to enable/disable headers at all? Like,

who -H
ps h
ps --headers

Most probably it useful for scripts only, so add an option to suppress all
headers will fit most case.

- -- 
Steffen Kaiser

-BEGIN PGP SIGNATURE-
Version: GnuPG v1

iQEVAwUBVQqkK3z1H7kL/d9rAQJ/cwgApl5SvuwOcLTDqn0X/A9pCCQvuzX50oyW
FZH43AzCVcAShxX5SE8wRhmxTfI71mjQrJkvQu1zbCfh7FAY5lNP7dtTNWZRCxtI
PG1B5qfHrB/56SdnEqckYNysrF8XSoKi+0mCzzB3GaSbAWeahvVu93qh1OItfDiA
5Ago3v9l2SlJq/TM9Bo54P5jwemgI9jg9t+5PHBF7RMJY1eQ1Dd4E4IoO/PnqnzX
IKL2Xgp3YBm7eNksQWsSowfPntgb56UfLQZrQWG+7pjkDpDsKxZxTStAYcVIH6pj
//vTYrDnQP0JPwMe2iqhhrl3NyK4Wk7R1obWcezEcXhxEKFP5fn/Vg==
=m6yz
-END PGP SIGNATURE-


fast doveadm search results

2015-03-19 Thread Vu Ngoc VU

hello,
I've posted same question here months ago.
But obtaine no answer, even not a you question is stupid.
So I don't know what to think about that.

My goal is to be able to find mails quickly with doveadm search.
We are using dovecot in a corporate. And some managers, sometimes ask to delete 
some messages.
These messages are unwanted ones: mistakenly sent, defamatory...

So, that situations appear rarely, but when asked, they expected me to deleted 
quickly these messages from few to thousands of users mailboxes.

Is that possible to change behaviour of Dovecot, some headers like sender, 
message-id, date are stored in cache for at least 48h? (7 days would be better).

I've read this page : http://wiki2.dovecot.org/Design/Indexes/Cache but cannot 
understand every parts.


A specific decision can be forced by ORing it with MAIL_CACHE_DECISION_FORCED.
Is OR in this sentence like AND/OR comparators?
Where to put MAIL_CACHE_DECISION_FORCED? 
mail-cache-decisions.c file contains the rules how Dovecot changes the decisions. -- is it in this file?


My setup is 2.2.9 on Ubuntu 14.04 running on OpenVZ containers with 2 Director 
and 2 imap/pop3 backends.
The storage is shared via NFS. Is this the performance problem? If dovecot has 
metadata I want in its cache, I cannot see how this is a problem.

Can these settings be useful for my case?
mail_always_cache_fields = 
mail_cache_fields = flags

mail_cache_min_mail_count = 0
mail_never_cache_fields = imap.envelope

Thanks.


Re: Patch for doveadm -f table nit (was Re: Dovecot current number of connections being used.)

2015-03-19 Thread Willem Jan Withagen
On 19-3-2015 9:30, Gedalya wrote:
 On 03/18/2015 08:49 PM, Timo Sirainen wrote:
 There's no reason why flow and pager should write headers to stderr
 because it would always result only in a mess. But instead of changing
 table headers to write to stdout, I think a better fix would be to
 make tab formatter write headers to stderr. Including headers in
 stdout makes it more difficult to write scripts that access the actual
 data. For example now you can do doveadm who -1 | sort and the
 output will work. If headers were written to stdout you'd have to make
 it more complicated. Also you can now easily specify what you want to
 do with the headers, 2/dev/null if you don't care about them or 21
 if you want to include them in stdout (which works even after |sort).

 So, I'll add in my v2.3 TODO that tab formatter should write to stderr..
 
 I've been using -f flow fetch text | sed s/^text=// when training
 spamassasin. Couldn't find a straightforward 'fetch raw message'. Seems
 unnecessarily awkward. Moving headers to stderr would help this, though.

I think that that is sort of forgoing the pupsoe of stderr.

Moving things to stderr for reasons of parsing and other trivia, just
complicates other sysadmin scripts where it is expected that only errors
are written to stderr. I would suggest to write all std-info just to
regular stdout, and deal with reporting tools just there.

just my 2 cts,

--WjW


[Dovecot-news] Released Pigeonhole v0.4.7 for Dovecot v2.2.16

2015-03-19 Thread Stephan Bosch
Hello Dovecot users,

Here is the final 0.4.7 release. No changes were committed since the
last release candidate.

Changelog v0.4.7:

* editheader extension: Made protection against addition and deletion of
  headers configurable separately. Also, the `Received' and
  `Auto-Submitted' headers are no longer protected against addition by
  default.
* Turned message envelope address parse errors into warnings.
* The interpreter now accepts non-standard domain names, e.g.
  containing '_'.
+ Implemented the Sieve index extension (RFC 5260).
+ Implemented support for the mboxmetadata and servermetadata extensions
  (RFC 5490).
+ Implemented new sieve commands for the doveadm command line utility.
  These commands are currently limited to ManageSieve operations, but
  the other current sieve tools will be migrated to doveadm in the near
  future as well.
+ Added more debug output about binary up-to-date checking.
+ Added script metadata to binary dump output.
- Fixed Sieve script binary up-to-date checking by normalizing the
  script location.
- The Sieve interpreter now flushes the duplicate database during start
  phase of result execution rather than commit phase. This makes sure
  locks on the duplicate database are released as soon as possible,
  preventing contention.
- Performed a few optimizations in the lexical scanner of the language.
- Fixed bug in `:matches' match-type that made a pattern without
  wildcards match as if there were a '*' at the beginning.
- Fixed crash in validation of the string parameter of the comparator
  tag.
- extprograms extension: Made sure supplemental group privileges are
  also dropped. This was a problem reported by Debian lintian.
- Fixed bug in handling of binary errors for action side-effects and
  message overrides.
- file script storage: Restructured storage initialization to address
  backwards compatibility issues.
- dict script storage: Fixed small memory allocation bug.

The release is available as follows:

http://pigeonhole.dovecot.org/releases/2.2/dovecot-2.2-pigeonhole-0.4.7.tar.gz
http://pigeonhole.dovecot.org/releases/2.2/dovecot-2.2-pigeonhole-0.4.7.tar.gz.sig

Refer to http://pigeonhole.dovecot.org and the Dovecot v2.x wiki for
more information. Have fun testing this new release and don't hesitate
to notify me when there are any problems.

Regards,

-- 
Stephan Bosch
step...@rename-it.nl











___
Dovecot-news mailing list
Dovecot-news@dovecot.org
http://dovecot.org/cgi-bin/mailman/listinfo/dovecot-news


Re: fast doveadm search results

2015-03-19 Thread Joseph Tam


Vu Ngoc VU v...@mcra.fr writes:


My goal is to be able to find mails quickly with doveadm search.
We are using dovecot in a corporate. And some managers, sometimes ask to delete 
some messages.
These messages are unwanted ones: mistakenly sent, defamatory...

So, that situations appear rarely, but when asked, they expected me to
deleted quickly these messages from few to thousands of users
mailboxes. 


Is that possible to change behaviour of Dovecot, some headers like
sender, message-id, date are stored in cache for at least 48h? (7 days
would be better).


So is this a fair summary of what you are asking: you want to load
dovecot's caches with searchable items (i.e. specified headers) *and*
have them expire and removed from caches after a preset amount of time?

Caches are persistent: once an item is cached, it stays in the cache.
I can't think of a good way to purge them without a lot of bother, but
maybe you don't really need this.

If you want to preload the cache with searchable items, you can periodically
run a search/fetch command, which will load the cache with headers you want.

http://www.dovecot.org/list/dovecot/2010-October/053521.html

Maybe you can even add these items into the cache upon delivery,
but someone more knowlegable than I would have to help you with that.
The FTS/Solr plugin might also help.

You seem to be optimizing the wrong problem.  Reading between the lines
of your message, your management wants a technical solution to a human
problem (someone did an oops).

Joseph Tam jtam.h...@gmail.com


Re: core not dumped

2015-03-19 Thread Markus Schönhaber
Am 19.03.2015 um 14:07 schrieb James:

 There is some underlying problem with imap-login but in order to debug 
 it I'd like to see a core file.  On error dovecot reports core not 
 dumped.  If I put abort() in the code at the point it is reporting 
 then a core file is written, so there is no OS reason why a core can not 
 be written.  It appears to be dovecot's choice to control the child.  In 
 an attempt to obtain a core file I have:
 
 service imap-login {
chroot =
drop_priv_before_exec = yes
user = dovecot
 }
 
 How can I make imap-login to produce a core file?

Maybe this helps:
http://dovecot.org/bugreport.html#coredumps

-- 
Regards
  mks


Re: fast doveadm search results

2015-03-19 Thread Vu Ngoc VU

Date: Thu, 19 Mar 2015 15:08:42
From: Steffen Kaiser skdove...@smail.inf.fh-brs.de
Reply-To: dovecot@dovecot.org
To: Vu Ngoc VU v...@mcra.fr
Cc: dovecot@dovecot.org
Subject: Re: fast doveadm search results



My goal is to be able to find mails quickly with doveadm search.


What information you are search for? Message-ID, subject, body text?

Thanks for your answer.
Yes, I only need doveadm to search for fields that are in envelope or headers.
Not the whole body part or the attachments.


If your data is in the headers, check out:

doveconf -a|grep -i cache

mail_always_cache_fields =
mail_cache_fields = flags
mail_cache_min_mail_count = 0
mail_never_cache_fields = imap.envelope

e.g. put message-id into mail_always_cache_fields


Yes, as I didn't yet set anything, it looks like this.
If I record correctly, I've pasted it in my initial post.

OK, I'll try to change mail_always_cache_fields.


core not dumped

2015-03-19 Thread James
There is some underlying problem with imap-login but in order to debug 
it I'd like to see a core file.  On error dovecot reports core not 
dumped.  If I put abort() in the code at the point it is reporting 
then a core file is written, so there is no OS reason why a core can not 
be written.  It appears to be dovecot's choice to control the child.  In 
an attempt to obtain a core file I have:


service imap-login {
  chroot =
  drop_priv_before_exec = yes
  user = dovecot
}

How can I make imap-login to produce a core file?


Syslog error report:
Mar 18 09:22:28 MAILHOST dovecot: [ID 583609 mail.crit] imap-login: 
Fatal: master: service(imap-login): child 10812 killed with signal 11 
(core not dumped) [last ip=111.222.333.444]




Should anyone care at this point (before I've looked at a core file) the 
error is related to;

imap-login: Disconnected (no auth attempts in 0 secs): user=,



James.


Re: fast doveadm search results

2015-03-19 Thread Steffen Kaiser

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Thu, 19 Mar 2015, Vu Ngoc VU wrote:


My goal is to be able to find mails quickly with doveadm search.


What information you are search for? Message-ID, subject, body text?

If your data is in the headers, check out:

doveconf -a|grep -i cache

mail_always_cache_fields =
mail_cache_fields = flags
mail_cache_min_mail_count = 0
mail_never_cache_fields = imap.envelope

e.g. put message-id into mail_always_cache_fields

- From http://dovecot.org/pipermail/dovecot-cvs/2013-May/023261.html

lib-storage: Allow mail_*cache_fields settings to specify any hdr.* fields

- -- 
Steffen Kaiser

-BEGIN PGP SIGNATURE-
Version: GnuPG v1

iQEVAwUBVQrYanz1H7kL/d9rAQInGwf9HSkQr7JhGI/GYH27qiEez2Adnp/7f8Qv
PfgcH+PqKpUcvXNM1xRrVXEq4yswNnkEIYjT7gs0NAY/Yr72cT5NuoU6s37yrPYW
moC/timqEx8UXafNmB3v+L2U0o0owvfxd4yK93EmUxbe7i91jeYBnKXHKoNA7uNF
p3V6ey7qf+CNmFg++rUnmH69iNG12Ia28Gg8ynzc1jZXEDFB2OCB+tFJwjJx2/Y6
Ujgis2JrtI5w086dfMwGnVexqGd697PgSmgYDxX5h8wPe6hd4oUc6dxV1cTlmzwj
cjJVVPNHhq37NFr8Uze+eYR3mqTBnex4I37WMCbuAhMgAn4BNOp8Kg==
=dwNy
-END PGP SIGNATURE-


Re: core not dumped

2015-03-19 Thread James

On 19/03/2015 13:35, Markus Schönhaber wrote:

dumped.  If I put abort() in the code at the point it is reporting
then a core file is written, so there is no OS reason why a core can not
be written.  It appears to be dovecot's choice to control the child.  In
an attempt to obtain a core file I have:

service imap-login {
chroot =
drop_priv_before_exec = yes
user = dovecot
}

How can I make imap-login to produce a core file?


Maybe this helps:
http://dovecot.org/bugreport.html#coredumps



I can create core dumps but not from imap-login, so it's not a general 
system restriction.  Adding abort() to the master gives a core - but but 
not a relevant one.  Adding an arbitrary abort() to imap-login gives a 
core not dumped message.



James.


Re: core not dumped

2015-03-19 Thread Pascal Volk
On 03/19/2015 02:53 PM, James wrote:
 ...
 service imap-login {
 chroot =
 drop_priv_before_exec = yes
 user = dovecot
 }

 How can I make imap-login to produce a core file?
 ...
 I can create core dumps but not from imap-login, so it's not a general 
 system restriction.  Adding abort() to the master gives a core - but but 
 not a relevant one.  Adding an arbitrary abort() to imap-login gives a 
 core not dumped message.

Try this configuration:

service imap-login {
  executable = imap-login -D
}

Your configuration (doveconf -n output) may be also helpfull


Regards,
Pascal
-- 
The trapper recommends today: defaced.1507...@localdomain.org


check if anvil is working

2015-03-19 Thread Leonardo Rodrigues


Hi,

Is there any way of making sure the anvil service, used to penalty 
login fails, is working ? I dont see anything on the logs regarding it 
neither have it configured. It's not on my configuration files, but it 
can be seen on a 'dovecot -a' dump. Should it be logging something ? 
Should i have enabled it somehow ?


Thanks for the answers.

[root@correio log]# dovecot --version
2.2.13

(from dovecot -a dump)

service anvil {
  chroot = empty
  client_limit = 0
  drop_priv_before_exec = no
  executable = anvil
  extra_groups =
  group =
  idle_kill = 4294967295 secs
  privileged_group =
  process_limit = 1
  process_min_avail = 1
  protocol =
  service_count = 0
  type = anvil
  unix_listener anvil-auth-penalty {
group =
mode = 0600
user =
  }
  unix_listener anvil {
group =
mode = 0600
user =
  }
  user = $default_internal_user
  vsz_limit = 18446744073709551615 B
}





--


Atenciosamente / Sincerily,
Leonardo Rodrigues
Solutti Tecnologia
http://www.solutti.com.br

Minha armadilha de SPAM, NÃO mandem email
gertru...@solutti.com.br
My SPAMTRAP, do not email it