Re: Cyrus Murder Environment Upgrade

2020-06-11 Thread Wolfgang Breyha
On 10/06/2020 20:47, Miguel Mucio Santos Moreira wrote:
> Wolfgang,
>
> If you don't mind, I'd like to know if when you upgraded backend servers
> from 2.4 version to 2.5 version you have an increase, in metadata size.Here
> we had 30% around of increase

Yes, cyrus.* are larger. Not sure about .cache, but .index for sure. And
the databases will grow as well if you change to twoskip.

We had to go back to skiplist on some hosts after the database reached
~200MB due to long locking times. The frontends started to have troubles
with long locks leading to timeouts on connect.

Greetings, Wolfgang
--
Wolfgang Breyha  | https://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Cyrus Murder Environment Upgrade

2020-06-09 Thread Wolfgang Breyha
Hi!

On 09/06/2020 14:56, Miguel Mucio Santos Moreira wrote:
> Dear Wolfgang,
>
> Firstly thanks for your answer, secondly I have one more doubt, during this
> time where the new Mupdate Master is receiving mailboxes information from
> backend servers, is necessary stopping comunications between frontend
> servers and mupdate master or none action is necessary besides that one
> you've mentioned before?
> We're concerned if frontend servers will connect to Mupdate Master and
> receive from it an information which there's no mailboxes anymore until the
> backend push entirely mailboxes information and this situation to cause any
> trouble.

I recommend the follow steps:
*) check that your currently running setup has no conflicts in mailboxes.db
   by running "ctl_mboxlist -mw". It is possible that you see output if
   somebody changes his mailboxes while you run the command, but it should
   not appear again if you run the command a second time. If everything is
   fine...

*) shut down all running cyrus
   frontends first, then backends and mupdate last
*) backup your mailboxes.db on mupdate server
*) replace/update mupdate and start it with empty/removed mailboxes.db.
*) backup your mailboxes.db on the backends
*) do the ctl_mboxlist -m by hand on the backends (only one at the same
   time) you can check if everything went ok with "-mw" at any time
   afterwards.
*) start cyrus on backends

In our setup the frontends have mupdate running as well. I can't currently
remember if this is mandatory. If this is true in your setup then:
*) remove or rename the mailboxes.db database on the frontends and start
   them. They will fetch the database immediately from the mupdate server.
   This is visible in syslog as well and takes about 30 seconds in our
   setup (~250MB mailboxes.db).
otherwise
*) start the frontends

At this point everything should be up and running again.

Watching syslog output all the time usually helps.

IIRC we updated the mupdate server to 2.5 first. Then we had a mix of 2.4
and 2.5 backends for some time. The 2.5 backends had some capabilities
suppressed. Frontends had 2.4 until all backends had 2.5. Last but not
least we upgraded to 2.5 on the frontends.

If you need more info/details feel free to ask.

Greetings, Wolfgang
--
Wolfgang Breyha  | https://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Cyrus Murder Environment Upgrade

2020-06-09 Thread Wolfgang Breyha
On 08/06/2020 17:37, Miguel Mucio Santos Moreira wrote:
> Now we're in doubt about how is the best solution to replace the mupdate
> master server for a new one.
> Nowadays we have around 16K mailboxes.

IIRC we simply replaced the mupdate server and did a "ctl_mboxlist -m" on
all backends to fill it. Shouldn't take that long since we did it with 130k
on 8 backends in under 20 minutes (or even shorter).

Greetings, Wolfgang
--
Wolfgang Breyha  | https://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: cyrus 2.5 imap idle/stuck connections (DOS like)

2019-03-07 Thread Wolfgang Breyha
Heiler Bemerguy via Info-cyrus wrote on 07/03/2019 16:30:
> My  "man imapd.conf" doesn't list this option at all. I think my Cyrus 
> 2.5.10 is older than it..

Yes. It appeared in 2.5.11 according to my build environment.

But there already was the option
 timeout: 30
before. So every connection was closed by default after 30 minutes if there
was no activity.

"imapidletimeout" uses the value of "timeout" as upper limit default as well.

> But I've added it to the .conf anyway. Won't hurt if it doesn't exist 
> yet, right? lol
I currently don't remember if imapd ignores unknown options or fails on startup.

But maybe the better option is to use
tcp_keepalive: yes
anyway.

We had "dead" connections as well before imapidletimeout existed and I was
able to get rid of them by activating keepalives to trigger the "timeout: 30"
check.

Greetings, Wolfgang
-- 
Wolfgang Breyha  | https://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus

Re: cyrus 2.5 imap idle/stuck connections (DOS like)

2019-03-07 Thread Wolfgang Breyha
Heiler Bemerguy via Info-cyrus wrote on 07/03/2019 15:39:
> Yes I've read imapd.conf and cyrus.conf and found no options to limit
> connections per source IP or "idleness"..
> 
> It means anyone can open a lot of connections to any port (143, 25, 110 etc)
> and render the server unusable??
You can try to set
imapidletimeout: 
as documented in "man imapd.conf".

To keep your server "RFC friendly" this value should not be lower than 30
minutes, because RFC 2177:3. recommends that clients show activity at least
every 29 minutes.

Greetings, Wolfgang
-- 
Wolfgang Breyha  | https://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Help! Cyrus 2.5.11 segmentation fault

2018-08-03 Thread Wolfgang Breyha
Hi!

Sorry for the late answer... most likely you already fixed your issue...

On 16/07/18 10:43, Marco Chesi wrote:
> Hello,
> we have a Cyrus 2.5.11 on Debian 7 using murder (2 frontends, 3 backends, 1
> mupdate, about  5000 mailboxes) in production environment, hosted by a
> VMware cluster 6.5.
> 
> Suddenly, ALL mailboxes have becomed inaccessible.
> 
> In the log, we found many messages like this:
> 
>    master[5965]: process type:SERVICE name:imaps path:/usr/cyrus/bin/proxyd
> age:82.255s pid:5987 signaled to death by signal 11 (Segmentation fault)
> 
> I tried many times to restart the cyrus service on all servers without
> success.
> 
> Users are authenticated correctly, error occurs when they try to access the
> mailbox (trying with a manual connection using telnet, client dies on a
> "SELECT INBOX" command after a successfull login)

Actually that's the point when your frontend connects to your backend to
access the mailbox. So, you've troubles with backend authentication. Most
likely the proxy user is somehow broken.

At this point you're hit by an quite old bug...

2.5.11 misses the patch for this issue which was committed (backported from
3.0 where it was applied in 2016) in November 2017. Don't know why no
release was done for that yet.

see:
https://github.com/cyrusimap/cyrus-imapd/issues/40
At the bottom you'll find the two patches which fix this issue.

If you're able to rebuild new packages include these patches. If not,
you've to convince the debian people to provide an update with them.

But most likely the issue goes away if you fix your backend authentication
anyway.

Greetings, Wolfgang
-- 
Wolfgang Breyha  | https://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


INBOX.INBOX.

2018-05-15 Thread Wolfgang Breyha
Hi!

I'm not sure if this is a bug or intended...

cyrus checks for mailbox names including "INBOX.INBOX." since 2.5 and
prevents creation to stop buggy clients like Apple Mail from recursing.

But it still allows eg.
INBOX.INBOX.Trash
since the check is done after conversion to the internal user format.

INBOX.INBOX.(Trash|Sent|Drafts) is widely used by K9 (and others) as it
seems. K9 fixed it "recently" ...
https://github.com/k9mail/k-9/issues/701
... but it seems existing configs still use this pattern.

Does cyrus intentionally allow user..INBOX. and only prevents
user..INBOX.INBOX or is this a bug and will be changed in future
versions?

With kind regards,
Wolfgang Breyha
-- 
Wolfgang Breyha <wbre...@gmx.net> | https://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: repairing a calendar

2017-12-20 Thread Wolfgang Breyha
On 20/12/17 20:57, Ken Murchison wrote:
> The mailbox types for the broken user's DAV mailboxes are wrong. Type 0
> (zero) says its a regular email mailbox.  You'll have to change them to 32
> for calendars and 64 for addressbooks.

Ok, fixed it with ctl_mboxlist, but
$ dav_reconstruct 
Reconstructing DAV DB for ...
Inserting DAV DB entries for user..#addressbooks...
Inserting DAV DB entries for user..#addressbooks.Default...
Inserting DAV DB entries for user..#calendars...
Inserting DAV DB entries for user..#calendars.Default...
Segmentation fault

...at this point I'll move this thread to github issue tracker. It seems
both XFER and dav_reconstruct are broken an 2.5.11.

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus

Re: repairing a calendar

2017-12-20 Thread Wolfgang Breyha
On 20/12/17 17:35, Ken Murchison wrote:
> Try:
> 
> dav_reconstruct 

Oh sorry, didn't find that one... but doing so removes the .dav
file without generating a new one. So I assume that something happend
XFERing that mailbox destroying important information about DAV mailboxes.

strace shows that dav_reconstruct unlinks the DB and scans mailboxes.db
afterwards. And then it ends without further steps.

Looking at a ctl_mboxlist dump...
$ ctl_mboxlist -d|grep user.
user..#addressbooks  0 part18 lrswipkxtecdan
user..#addressbooks.Default  0 part18 lrswipkxtecdan
user..#calendars 0 part18 lrswipkxtecdan
user..#calendars.Default 0 part18 lrswipkxtecdan
user..#calendars.Inbox   0 part18 lrswipkxtecdan
user..#calendars.Outbox  0 part18 lrswipkxtecdan

compared to a working one...
user..#addressbooks64 part06  lrswipkxtecdan
user..#addressbooks.Default64 part06  lrswipkxtecdan
user..#calendars   32 part06  lrswipkxtecdan
user..#calendars.Default   32 part06  lrswipkxtecdan
user..#calendars.Inbox 32 part06  lrswipkxtecdan
user..#calendars.Outbox32 part06  lrswipkxtecdan

I guess there are missing important flags on those DAV folders. Most likely
"lost in translation^WXFER". Should I file a bug?

BTW(ab)using dav_reconstruct with user. instead of 
causes a SIGSEGV.

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


repairing a calendar

2017-12-20 Thread Wolfgang Breyha
Hi!

I'm currently debugging some oddities with a users default calendar after the
mailbox got XFER'ed to a different murder backend. The whole setup uses 2.5.11
currently.

After lightning started to fail the user removed the calendar and added it
again. lightning now tries to fetch the whole calendar (about 100 entries). I
see the REPORT request which gets a Multi-Status response with all ics URIs
and 200 OK. After that I see the calendar-multiget request for all these URIs.
But this request gets a HTTP/1.1 404 Not Found response. I assume that at
least one of the URIs fails. strace does not give any clues which one. The
session trace from cyrus doesn't help as well.

dumping the .dav sqlite DB it seems that there are at least 2 entries (the
latest ones after the XFER) which are not in the DB table and only in the
filesystem. The timestamp of the .dav DB is exactly from the XFER and not from
the newer entries found in the calendar folder.

Currently I'm searching my logs if there is something odd after the XFER
especially while the new entries got added.


While doing that the general questions raised how to repair a calendar at all,
since reconstruct does not do it as it seems? At least the .dav sqlite
database is not rebuilt. Removing the .dav file does no good as well. I get an
empty one after the next access to the calendar. But it is still not
accessible/syncable.

Greetings,
Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: cyr_dbtool repack

2017-10-17 Thread Wolfgang Breyha
Wolfgang Breyha wrote on 17/10/17 12:22:
> Hi!
> 
> Is it safe to use
> cyr_dbtool  (skiplist|twoskip) repack
> while cyrus is running? Or do I have to shut it down while repacking the
> databases? mycheckpoint() in both cyrus_skiplist.c and cyrus_twoskip.c seems
> to do locking and transaction checking as it seems. Still I'm not sure if it's
> safe to use while active.

Sorry, forgot to mention... I'm running 2.5.x.

Greetings,
Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


cyr_dbtool repack

2017-10-17 Thread Wolfgang Breyha
Hi!

Is it safe to use
cyr_dbtool  (skiplist|twoskip) repack
while cyrus is running? Or do I have to shut it down while repacking the
databases? mycheckpoint() in both cyrus_skiplist.c and cyrus_twoskip.c seems
to do locking and transaction checking as it seems. Still I'm not sure if it's
safe to use while active.

Greetings,
Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Problems with cyrus 2.5.10 after system update

2017-05-17 Thread Wolfgang Breyha
Patrick Goetz wrote on 17/05/17 16:40:
> SSL alert number 40

This error has nothing to do with SSLv3 or protocol version at all. Maybe your
private key and certificate do not match on server side.

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Did calculating the quota change from 2.3 to 2.5?

2016-12-31 Thread Wolfgang Breyha via Info-cyrus
On 31/12/16 06:17, Bron Gondwana via Info-cyrus wrote:

> If your cyrus.* files are identical then you have pretty weird mailboxes,
> but yeah - I guess it could happen if you had two folders with identical
> messages in identical order and all the timestamps identical.

Especially empty mailbox cyrus.cache/squat and most cyrus.annotation (2.5)
files got linked together on my testhost.

I use freedup with the patch sent in
https://mid.mail-archive.com/info-cyrus@lists.andrew.cmu.edu/msg42850.html
on regular basis without harm.

Meanwhile the patch is included in the most recent 1.6-3 release of freedup.

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Did calculating the quota change from 2.3 to 2.5?

2016-12-30 Thread Wolfgang Breyha via Info-cyrus
On 29/11/16 22:37, Jason L Tibbitts III via Info-cyrus wrote:
> Fun random question: Does anything blow up if you run hardlink on your
> mail spool?  (The hardlink program finds identical files and hardlinks
> them.)

Using "hardlink" is IMO not save on imap spools since it also links cyrus.*
files what's definitely not what you want.

I recommend using freedup instead. Something like
freedup -n -v -a -T -o '-name "*."' -l /var/spool/......

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: mailboxes.db locking problem after updating from 2.4 to 2.5.9

2016-11-17 Thread Wolfgang Breyha via Info-cyrus
On 18/11/16 01:07, Bron Gondwana via Info-cyrus wrote:
> On Fri, 18 Nov 2016, at 10:51, Wolfgang Breyha via Info-cyrus wrote:
>> I already filed a bug https://github.com/cyrusimap/cyrus-imapd/issues/43 
>> but no response so far. I directly asked Bron, but no response as well.
> 
> Sorry, I really don't have a clue.  2.5 does have a different mailboxes.db
> format, so it's a bit more CPU intensive.  The real massive win for CPU
> usage is going to come with reverse ACLs:

Thanks for the response in the first place! I'm sorry to push this topic
continuously because I appreciate all your hard work (and Ellies as well) on
cyrus very much!

We had a quite hard time keeping our infrastructure operational after doing
the final step upgrading our frontends to 2.5. Seeing others having the same
stress should be quite a warning for people thinking about an upgrade.

Since Deniss has these troubles with skiplist as well on 2.5 it looks like the
size
triggers it. twoskip seems to perform even worse if mailboxes.db reaches a
certain size,
or it's only the size penalty which hits twoskip earlier.
150-200 MB seems critical for locking issues.

> https://blog.fastmail.com/2015/12/05/reverse-acls-making-imap-list-fast/

I read about them some time ago in the 3.0.0-beta changelog. Hopefully we're
on a stable cyrus release supporting it before reaching the critical size for
skiplist;-)

> But to get there, we need to solve reverse ACLs for groups.  I did ask about 
> it here:
> 
> https://lists.andrew.cmu.edu/pipermail/info-cyrus/2015-November/038628.html

Sorry, we don't use groups.

> But then didn't follow up to add group reverse ACL support in Cyrus, so 
> reverse ACLs are broken if you're using groups.

So, 2.5 wont get them anyway I guess;-)

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: mailboxes.db locking problem after updating from 2.4 to 2.5.9

2016-11-17 Thread Wolfgang Breyha via Info-cyrus
On 17/11/16 14:00, Deniss via Info-cyrus wrote:
> Hello,
> 
> I trying to migrate one big cyrus imap server from 2.4 to 2.5.9.
> 
> I updated binaries, fix db backend in imapd.conf and converted
> mailboxes.db with ctl_mboxlist -d & -u to twoskip.
> 
> cyrus ran fine until morning when a count of simultanious sessions
> started to rise.

Sounds familiar;-)

> I converted mailboxes.db back to skiplist and got a bunch (10-20 per
> sec) of following logs:

I did the same. twoskip was and is useless on my frontends. With skiplist my
loads dropped at least down to 2-5. After doubling our vCPUs it runs quite well.

Do you use roundcube by any chance? If yes update to 2.5.10 and do not use
$config['imap_disabled_caps'] = array('LIST-EXTENDED');

Otherwise roundcube sends two 'LIST "" "*"' on each login and triggers two
full table scans on your mailboxes.db

> 180M /var/imap/mailboxes.db.skiplist.24
> 215M /var/imap/mailboxes.db.skiplist.25
> 262M /var/imap/mailboxes.db.twoskip.25

Wow, larger then ours. We've ~140MB on skiplist.25.

> Any ideas or suggestion for investigation ?

I already filed a bug
https://github.com/cyrusimap/cyrus-imapd/issues/43
but no response so far. I directly asked Bron, but no response as well.

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Bugs in cyrus murder 2.5

2016-11-15 Thread Wolfgang Breyha via Info-cyrus
Michael Menge via Info-cyrus wrote on 15/11/16 17:08:
> Thanks for the info, we are also still running cyrus 2.4 on our  
> production environment.
> But mostly because that was the stable version at the time we migrated  
> from stand alone
> to murder setup and the "never touch a running system" mentality. I  
> was not aware that
> there was decreased stability for murder setup in the cyrus 2.5 version.

For 2.5.10 it's primarily not stability. It's functionality.

> Do you have some specific bugs in mind?

The major ones are:

If you use XFERs between backends... they are still completely broken:
https://github.com/cyrusimap/cyrus-imapd/issues/46

This one may still hurt if you use shared mailboxes (on different backends):
https://github.com/cyrusimap/cyrus-imapd/issues/41

And last but not least .. performance issues on frontends (compared to 2.4):
https://github.com/cyrusimap/cyrus-imapd/issues/43

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: command line deletion of files

2016-09-29 Thread Wolfgang Breyha via Info-cyrus
Vladislav Kurz via Info-cyrus wrote on 29/09/16 17:04:
> ipurge is nice but I would really appreciate if it had a --dry-run
> option. I'm never sure what it will really delete.

It got one in 2.5.9.

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Huge performance problems after updating from 2.4 to 2.5.9

2016-09-29 Thread Wolfgang Breyha via Info-cyrus
Hi!

A can add another story of that type, but with different setup:

We already migrated to 2.5.7 on our ten backends some month ago step by step
and upgraded to 2.5.9 lately. We never had any performance issues on them. All
of them have done a full "reconstruct -V max" and special-use metadata is set
to step in for static xlist missing in 2.5 frontends.

Yesterday I did the final step by updating our mupdate server and the murder
frontends. No problems on the mupdate server so far.

The configs are mostly the same like for 2.4 (except for the changed names).
The only key change done was from skiplist to twoskip for all databases:
annotation_db: twoskip
duplicate_db: twoskip
ptscache_db: twoskip
mboxlist_db: twoskip
seenstate_db: twoskip
statuscache_db: twoskip
subscription_db: flat
tls_sessions_db: twoskip
userdeny_db: flat

All of them are placed in /var/spool/imap/config except statuscache and
tlscache which reside in /dev/shm.

After migrating the frontends yesterday evening I already recognized a higher
load and decided to keep an eye on it.

Our 3 frontends are:
CentOS 6 (vmware based)
16GB RAM
4 CPUs

They usually have ~4000-4500 concurrent imap(s) connections at peak time and
had a load ~1-3 with cyrus 2.4. swap was not used.

Today in the morning we had the same connection count with load ~100-250 with
cyrus 2.5.9 and twoskip. no swap used. top shows a huge amount of imap
processes in running state. Another thing I recognized was that changes in
mailboxes.db on backends reached the mupdate server, but didn't come through
to the frontends anymore even after 15 minutes.

I changed mailboxes.db and tlscache back to skiplist and load went down to
5-15. So, much better but still 5 times as high as with 2.4 and still causing
headaches.

Currently I have no idea what causes the load besides twoskip (which I can
live without since skiplist never caused us any troubles).

I compared "USAGE" loglines from two days (2.4) ago to 2.5 with skiplist and
twoskip.

2.4   : user: 0.384322, sys: 0.029056 (23538 USAGE lines, 09:00-10:00)
2.4   : user: 0.353515, sys: 0.030814 (25790 USAGE lines, 13:00-14:00)
2.5 ts: user: 0.903491, sys: 0.028196 (23429 ..., 08:00-09:00)
2.5 ts: user: 1.130391, sys: 0.032894 (27709 ..., 09:00-10:00)
2.5 sl: user: 0.864270, sys: 0.026580 (29567 ..., 13:00-14:00)
2.5 sl: user: 1.077462, sys: 0.032952 (25879 ..., 14:00-15:00)

Comparing all three I wonder why skiplist makes such a big difference.

lmtpd shows now relevant difference for all three.

Most likely I will go for horizontal scaling putting a 4th frontend in the line.

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


2.5.9 build issues

2016-08-20 Thread Wolfgang Breyha via Info-cyrus
After modifying my spec file from 2.5.8 to 2.5.9 I ended up with two new
issues:

*) jcal.c can't be compiled with jansson < 2.7 (eg. every RHEL) because
json_boolean_value() is missing. I fixed it with:
-
--- cyrus-imapd-2.5.9/imap/jcal.h.orig  2016-08-20 16:20:52.049359274 +0200
+++ cyrus-imapd-2.5.9/imap/jcal.h   2016-08-20 16:21:03.719723892 +0200
@@ -50,6 +50,10 @@

 #include "util.h"

+#if (JANSSON_MINOR_VERSION < 7)
+#define json_boolean_value json_is_true
+#endif
+
 extern char *icalcomponent_as_jcal_string(icalcomponent* comp);
 extern icalcomponent *jcal_string_as_icalcomponent(const char *str);
 extern const char *begin_jcal(struct buf *buf);


*) htmlstrip.c gets installed as source to /usr/lib/cyrus-imapd. It seems
it doesn't get compiled at all and the source gets installed instead.

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: squat broken after upgrade from 2.4 to 2.5?

2016-06-21 Thread Wolfgang Breyha via Info-cyrus
Bron Gondwana via Info-cyrus wrote on 21/06/16 01:52:
> This could very well be a bug in the upgrade :(  It would be great to have
> a test case to check this.  I can't do that today, but maybe ellie can do
> something.
> 
> Sadly our bug tracking situtation for Cyrus is a mess at the moment, but
> I'm hoping to have that cleaned up soon.

I filed
https://bugzilla.cyrusimap.org/show_bug.cgi?id=3938

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


squat broken after upgrade from 2.4 to 2.5?

2016-06-20 Thread Wolfgang Breyha via Info-cyrus
Hi!

I upgraded some backend hosts from 2.4.18 to 2.5.8. Currently they are all
still running with index version 12.

Some of these mailboxes have squatter activated as annotation and my
cyrus.conf has
squatter  cmd="squatter -asir *" at=0500

I see that it runs at night and logs entries like:
Jun 20 05:00:15 lauren squatter[27593]: indexing mailbox user.

There are no errors in the log from squatter.

But today I recognized on my own mailbox that squatter returns nothing while
searching with thunderbird. The resulting imap request looked like:
<1466414132<18 UID Search UNDELETED (OR (OR OR TO "search" HEADER CC "search"
SUBJECT "search") BODY "search")
<1466414132>* SEARCH
18 OK Completed (0 msgs in 0.010 secs)

I then moved the current squat db and the same search returned 214 messages.

Rebuiling the squat db and searching again resulted in the exact same 214
messages.

It seems that something changed within the squat DB and 2.5 can't search in
the old 2.4 DBs. That's bad in two ways.

*) search doesn't fail with an error and simply returns no result. no fallback
to searching without squat db.
*) the squat db is not refreshed/rebuilt after upgrade.

Is this a bug or is something broken on my side?

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: idled multiplying and consuming the server

2016-06-16 Thread Wolfgang Breyha via Info-cyrus
Eugene M. Zheganin via Info-cyrus wrote on 10/06/16 16:58:
> idled cmd="idled" listen="/var/imap/socket/idled" proto="udp" prefork=0

That looks like an entry in the SERVICE section. That's wrong for idled.

idled should be added at the end of the START section like

START {

idled   cmd="idled"
}

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


prefork and IPv6

2016-06-09 Thread Wolfgang Breyha via Info-cyrus
Hi!

I recently wondered why some of my preforked processes on my murder backends
never get used. I detected them because some quite old lmtpd's were holding
locks on an already deleted deliver.db.

After some debugging I recognized that cyrus-master seems to fork the
configured amount of "prefork" daemons twice. One half listening on IPv4 and
the other half on IPv6. Since IPv6 is practically never used from our
frontends they stay forever doing nothing on the backends.

Is there some reasonable way to prevent this other than setting prefork=0?

I'm only using SERVICE entries like:
  Bimap cmd="imapd" listen="imap" prefork=5

Only the port is used for listen= without interface/IP.

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Cannot connect with cyradm

2016-05-07 Thread Wolfgang Breyha via Info-cyrus
On 06/05/16 04:24, Stuart Castergine via Info-cyrus wrote:
> C: A01 AUTHENTICATE PLAIN Y3lydXMAY3lydXMAaGVsbC1oYXRoLW5vLWZ1cnk=

I recommend changing the password from the "fury" thingy to something else.
Maybe you want to strip base64 encoded credentials in the future.

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: disable starttls, ssl only

2016-04-26 Thread Wolfgang Breyha via Info-cyrus
Gabriele Bulfon via Info-cyrus wrote on 26/04/16 12:25:
> Hi,
> 
> is it possible to disable completely the starttls option on cyrus imapd?
> I want just connections on 993 over ssl, no starttls at all.
> I noticed a number of "Fatal error: tls_start_servertls() failed" and noticed
> a slow down of the entire machine during these errors.
> I wouldn't like to have some kind of ddos attak using starttls on 993 or
> something.

Remove it from cyrus.conf?

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: 2.5.7 caldav interoperability

2016-04-22 Thread Wolfgang Breyha via Info-cyrus
rsto--- via Info-cyrus wrote on 21/04/16 22:51:
> P.S.: I am based in Vienna as well, so feel free to reach out to me :)

Thanks for your offlist help. I think you pointed me in the right direction.

2.5.7 announces VPOLL for all except iOS/8 devices. HEAD doesn't announce
VPOLL at all

HEAD
http_caldav.c:4520
/* Apple clients don't like VPOLL */
types &= ~CAL_COMP_VPOLL;
vs. 2.5.7
http_caldav.c:3512
/* XXX  iOS/8 doesn't like VPOLL */
if (hdr && strstr(hdr[0], "iOS/8")) types &= ~CAL_COMP_VPOLL;

May I ask to backport this change to 2.5.x? I patched it locally and can
confirm that our iOS/7 and 9 devices are able to access the Default Calendar 
now.

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: mailboxes.db invalid entries

2016-04-22 Thread Wolfgang Breyha via Info-cyrus
Jan Kowalsky via Info-cyrus wrote on 22/04/16 01:28:
> First I tried to dump the mailbox.db with ctl_mboxlist -d /tmp/mailboxes.txt
> 
> After deleting the wrong entry manually I wanted to reload the mailbox
> again with ctl_mboxlist -u /tmp/mailboxes.txt. All operation with
> stopped cyrus.

Have you renamed your mailboxes.db after using -d and before using -u?
Otherwise ctl_mboxlist will import your dump into the existing mailboxes.db.

And are this exactly the commands you used?
I think
ctl_mboxlist -d >/tmp/mailboxes.txt
and
ctl_mboxlist -f /tmp/mailboxes.db.new -u  | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


2.5.7 caldav interoperability

2016-04-21 Thread Wolfgang Breyha via Info-cyrus
Hi!

In our efforts to move on to 2.5 we also try to support caldav/carddav for our
employees. In our tests we tried to share the Default calendar through as many
devices/platforms as possible (not only) including Thundbird, OSX and iOS.

One problem we have is that iOS can access the Account and creates a new
Kalender on first access, but it does not use/detect the Default calendar. It
creates one with long UID name like 22xxx9EA-EFxx-4Exx-BAxx-Ax3D7xxx and
gives it a localized "displayname" attribute. In english "Calendar".

Calendars added by OSX are detected as well. Only Default is missing.

OSX on the other hand detects the Default as well as the iOS "Calendar" and
can access both.


For a user it is impossible to "guess" that UID mailbox/calendar name to use
it in clients without autodetection like lightning.

Is this a know issue that iOS can't/wont detect the Default calendar? Maybe
fixed in HEAD? Or is it something we did wrong in our configuration?

Greetings, Wolfgang

PS: carddav Default addressbook on the other hand works with iOS as well.
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: @ in mailboxname: 2.4 vs. 2.5

2016-04-08 Thread Wolfgang Breyha via Info-cyrus
On 08/04/16 23:28, Wolfgang Breyha via Info-cyrus wrote:
> Is it save to remove this limitation from mboxname.c?

https://bugzilla.cyrusimap.org/show_bug.cgi?id=3693

This patch was reverted in "some" releases, but obviously not in 2.5.
Please do so.

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


@ in mailboxname: 2.4 vs. 2.5

2016-04-08 Thread Wolfgang Breyha via Info-cyrus
Hi!

If not using virtual domains it was always allowed to use "@" in mailbox
names and our users did. Up to 2.4.

2.5 considers it as "invalid mailbox name" due to a change in mboxname.c

This makes 2.5 highly incompatible with existing murder infrastructure. Why
was this change introduced and not mentioned in the changelog?

Is it save to remove this limitation from mboxname.c?

Greetings,
Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: drown/SSL issue

2016-03-03 Thread Wolfgang Breyha via Info-cyrus
On 02/03/16 12:02, Wolfgang Breyha via Info-cyrus wrote:
> You do not need to rebuild OpenSSL. I would check the SPEC File of the CentOS
> 7 RPM which patches they included. If the TLS changes were not backported I
> would try to build one of the newer 2.4.18 SRPMs for Fedora (eg. 23) on 
> CentOS 7.

As of today RHEL/CentOS ships openssl updates with deactivated SSLv2 at
build time. It should be enough to update it and restart cyrus.

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: drown/SSL issue

2016-03-02 Thread Wolfgang Breyha via Info-cyrus
Hi!

Tony Galecki via Info-cyrus wrote on 02/03/16 03:57:
> I’m trying to figure out how to make my Cyrus install to not be susceptible to
> the drown issue.
> I have tried limiting the ciphers to TLSv1.2 but haven’t had much success.

Limiting the cipher list does not deactive protocol support in OpenSSL.

I don't know which patches Fedora backported from 2.4.18, but it seems not
enough, because 2.4.18 disables SSLv2/v3 by default and you can set
tls_versions: ...
in your config. Setting these is the only way to get rid of the protocolls
themself.

On older cyrus versions you can set
tlsonly: 1
but this can/will limit your protocoll support to TLSv1, with disabled v1.1
and v1.2, because TLSv1_server_method() was used.

You do not need to rebuild OpenSSL. I would check the SPEC File of the CentOS
7 RPM which patches they included. If the TLS changes were not backported I
would try to build one of the newer 2.4.18 SRPMs for Fedora (eg. 23) on CentOS 
7.

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: plaintextloginpause affects all POP3 connections

2015-10-15 Thread Wolfgang Breyha
On 24/09/15 22:57, Michael D. Sofka wrote:
> The plaintextloginpause affects all POP3 connections, even those that 
> are encrypted via pop3s or STARTTLS.   Not that this is necessarily a 
> bad thing  But is it expected behaviour?

True for 2.4.18 and 2.5.6. Looking at the code in pop3d.c it is expected
behaviour. Looking at imapd.c as well it seems it should not affect TLS
protected connections.

I patched it a while ago for my local RPMs:

> --- pop3d.c.orig  2014-09-15 15:33:35.993293154 +0200
> +++ pop3d.c   2015-07-06 16:32:15.281275940 +0200
> @@ -1497,7 +1508,8 @@
>  popd_userid, popd_subfolder ? popd_subfolder : "",
>  popd_starttls_done ? "+TLS" : "", "User logged in", 
> session_id());
>  
> - if ((plaintextloginpause = config_getint(IMAPOPT_PLAINTEXTLOGINPAUSE))
> + if ((!popd_starttls_done) && 
> +(plaintextloginpause = 
> config_getint(IMAPOPT_PLAINTEXTLOGINPAUSE))
>    != 0) {
>   sleep(plaintextloginpause);
>   }

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: RFC6154 and upgrade to Cyrus 2.5

2015-10-14 Thread Wolfgang Breyha
Marco wrote on 09/10/15 08:58:
> Hello,
> 
>   on Cyrus 2.4 I see extenstion for xlist folder flags. Folders and  
> flags must be configured on imapd.conf. Great, it works! Flags are  
> magically applied to all folders!
> 
> If I upgrade to Cyrus 2.5 or upper, what does it happen? I see that  
> Cyrus 2.5 also support "create special use", but I can't see no more  
> xlist-* configs. It seems that starting from Cyrus>=2.5 only client  
> can set flags during CREATE. But what does it happen to previously  
> Cyrus2.4 folder-flag associations?

With a little help from Bron I came to the following solution...

2.5 does not have xlist- and the only way to "migrate" it is to set it as
annotation to every mailbox.

It is possible to set it by connecting to the backend/server as admin user
authorized as the individual user and push eg.
. SETANNOTATION INBOX.Trash "/specialuse" ("value.priv" "\Trash")
commands. Maybe I get this to work over my 2.4 frontends as well.

On 2.5 the new SETMETADATA is available as well...
. SETMETADATA INBOX.Sent ("/private/specialuse" "Sent")

Greetings, Wolfgang
-- 
Wolfgang Breyha <wbre...@gmx.net> | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


cyrus 2.5 with myroundcube calendar

2015-05-04 Thread Wolfgang Breyha
Hi!

I tried to access the cyrus 2.5 calendar with myroundcube calendar and failed.

cyrus-imapd 2.5.1 is running and works as expected. Calendar is accessible
with Thunderbird/Lightning following
http://cyrusimap.org/docs/cyrus-imapd/2.5.0/install-http.php

Nothing unusual in the configs. https, noplaintext auth, digest disabled
for http.

I can add/edit/remove events with lightning as expected using
https://hostname/dav/calendars/user/user/Default/

Then I tried adding myroundcube calendar to my existing and working
roundcube installation. I added a caldav calandar with exactly same URL,
but without trailing / to myrc cal.

It works mostly, except that myrc calendar says:
 May  4 01:38:28 xxx roundcube: 435cti4v caldav_driver: Initialize sync 
 client for calendar 3
 May  4 01:38:28 xxx roundcube: 435cti4v caldav_driver: Syncing calendar id 
 3.
 May  4 01:38:28 xxx roundcube: 435cti4v caldav_driver: Found new event 
 /dav/calendars/user//Default/
 May  4 01:38:28 xxx roundcube: 435cti4v caldav_driver: Found new event 
 /dav/calendars/user//Default/85eaa723-327a-4cf5-8e20-bb04aa705829.ics
 May  4 01:38:28 xxx roundcube: 435cti4v caldav_driver: Found new event 
 /dav/calendars/user//Default/B79D296A8C9CC4B7B7794FADD7B57217-C2177D4A10BA4D17.ics
 May  4 01:38:28 xxx roundcube: 435cti4v caldav_driver: Created 0 new 
 events, updated 0 event.
 May  4 01:38:28 xxx roundcube: 435cti4v caldav_driver: Successfully synced 
 calendar id 3.

So, it actually finds the events, but doesn't add them to the rc calendar
afterwards. Don't know why.

Without trailing / in the caldav URI it even works to add an event,
roundcube saves it, I get it in thunderbird, but roundcube itself doesn't
display it.

I'm not sure if this is roundcube related or if cyrus-httpd is the cause.

I added unencrypted access for debugging purposes and tcpdumped the access.
What I see is that rc cal. asks for all 3(!) events, including
/dav/calendars/user//Default/
and gets a 404 not found in the multi-status response. That's the point
were I don't know if cyrus or rc calendar is doing something wrong. Maybe
it's caused by something completely differnt?

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


2.5.0 make install fails with enable-http

2015-03-04 Thread Wolfgang Breyha
Hi!

I tried to build a new 2.5.0 release on CentOS 7 from source.

I used:
./configure --with-extraident=xx-1 --with-syslogfacility=MAIL
--disable-static --enable-idled --enable-murder --enable-http
--enable-replication --with-snmp --without-bdb --disable-gssapi

configure did not detect the missing glib2-devel package needed by vzic.
make did at the last steps;-)
make install fails with
 Making install in tools/vzic/
 make[2]: Entering directory 
 `/opt/cyrus-imapd/src/cyrus-imapd-2.5.0/tools/vzic'
 make[2]: *** No rule to make target `install'.  Stop.
 make[2]: Leaving directory `/opt/cyrus-imapd/src/cyrus-imapd-2.5.0/tools/vzic'
 make[1]: *** [install-recursive] Error 1
 make[1]: Leaving directory `/opt/cyrus-imapd/src/cyrus-imapd-2.5.0'
 make: *** [install] Error 2

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: cyrus 2.4.17 TLS woes

2015-01-15 Thread Wolfgang Breyha
Patrick Goetz wrote on 15/01/15 13:34:
 Does anyone have a secure, functional cipher list entry they'd like to 
 share?

Maybe
https://bettercrypto.org/
is of help.

This document includes not only cyrus-imapd.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Patch for adding tls_honor_cipher_order

2014-10-23 Thread Wolfgang Breyha
Kristian Kræmmer Nielsen wrote on 17/10/14 15:13:
 The more important part of my previous mail are that there are issues with  
 the patches that now have been merged into git. E.g. compression is not  
 merged correctly and it is recommended to do negative list and not  
 positive lists of protocols.

Yes, you're right. The patches in master tree have broken logic...

Option documentation says:
 tls_versions: ssl2 ssl3 tls1_0 tls1_1 tls1_2
   Disable SSL/TLS protocols not in this list.

Code says:
+ if (strstr(tls_versions, tls1_2) == NULL) {
+#if (OPENSSL_VERSION_NUMBER = 0x1000105fL)
+ off |= SSL_OP_NO_TLSv1_2;
+#else
+ syslog(LOG_ERR, ERROR: TLSv1.2 configured, OpenSSL  1.0.1e insufficient);
+#endif
+ }

Setting the NO_TLSv1_2 option does the opposite of the expected/wanted
behavior. I also would prefer a negative list as most other daemons like
apache, exim, ... use. Maybe a more generic
tls_openssl_options: no_ssl2 no_ssl3 no_compression prefer_server_cipher_order
would be better?

And yes, you're also right with mentioning that functionality is missing.
 tls_compression: 0
   Enable TLS compression. Disabled by default.
 tls_eccurve: prime256v1
   Select the elliptic curve used for ECDHE.
description is there, but there is no code doing it actually. Support for ECDH
auto mode in Openssl 1.2+ as provided in
https://bugzilla.cyrusimap.org/attachment.cgi?id=1535
is missing in the documentation as well.

I think this should be fixed/enhanced for a alpha release of 2.5.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Patch for adding tls_honor_cipher_order

2014-10-17 Thread Wolfgang Breyha
Kristian Kræmmer Nielsen wrote on 17/10/14 14:48:
 already - I see you just added it ;-)

No, they (and more) were there for month as
https://bugzilla.cyrusimap.org/show_bug.cgi?id=3822
https://bugzilla.cyrusimap.org/show_bug.cgi?id=3823
https://bugzilla.cyrusimap.org/show_bug.cgi?id=3830
https://bugzilla.cyrusimap.org/show_bug.cgi?id=3861

Regards, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Moving mailboxes in Cyrus Murder leaves mails behind on source server

2014-05-12 Thread Wolfgang Breyha
Hi!

Peter Bücker wrote, on 23/07/13 16:33:
 Hi all,
 
 We're having an issue with our Cyrus Murder environment when moving 
 mailboxes from one backend to another backend. Some mails are left 
 behind on the source server while we think they should be removed. We 
 issue the rename by using cyradm on the source server with the 
 following command:
 
 oldserver rename user.foo user.foo newserver!default

I came across your pretty old, but unanswered posting because I searched for
troubles with...

 disconnect_on_vanished_mailbox: 1

... which causes the same troubles as you see on your murder.

We also see these troubles with 2.4.17 if a user or admin renames or moves a
mailbox while keeping a lock to this mailbox in another connection.

If I got it right
mailbox.c:mailbox_delete()
marks the mailbox as deleted in the mailboxes.db and waits until
mailbox_close() is called with the last lock which closes and removes the
mailbox then.

This failes IMO in the case disconnect_on_vanished_mailbox == true because
imapd errors out with a fatal() call without calling mailbox_close(). If this
connection held the very last lock on this mailbox it ends up without being
removed from filesystem.

For all the leftovers I see in the filesystem I find a
Mailbox user..xx has been (re)moved out from under client
in the logs.

Most likely it's recommended not to use disconnect_on_vanished_mailbox in the
current implementation.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Disable client authentication with certificates

2013-12-10 Thread Wolfgang Breyha
Stefan Gofferje wrote, on 10.12.2013 08:17:
 There are options?
 
 tls_require_cert: false
 tls_imap_require_cert: false
 tls_pop3_require_cert: false
 tls_lmtp_require_cert: false
 tls_sieve_require_cert: false
 
 Why ask for a cert when the config says it's not needed? Or do I see
 this too naive?

cyrus distinguishes between asking for a cert and requiring a cert. I don't
know why, sorry. Sometimes it is practical to ask for a cert and only try to
verify it without enforcing it. But asking for certs while incapable to verify
them (without CAs) seems odd. That's why I decided to do it that way.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Disable client authentication with certificates

2013-12-10 Thread Wolfgang Breyha
Stefan Gofferje wrote, on 10.12.2013 16:33:
 Maybe the existing options could just be extended, like in the Postfix
 setting for TLS, e.g.
 
 tls_imap_require_cert: no|ask|require

Changing the way how existing options work and breaking compatibility to
existing configurations is most likely not the best idea;-)

 I think, having logical options which are clear to the admin are better
 than some implicit consequences which are not not bilaterally logical.
 I don't know if I express this right/understandable :).

Adding a new option is easy. Done in 30 minutes. I can do it if a official dev
says it makes sense and will be added... but I don't get any answers from Bron
for very long time now. So I'm pushing the patches I use myself locally to
bugzilla waiting for a response.

 The background is that a bunch of TLS tutorials on the web include
 configuring the CA but not explaining in detail why, so an inexperienced
 admin could assume that he should put the CA certificate for the server
 cert's CA there.

TLS tutorials for cyrus-imapd including tls_ca_path/file by default? Most
likely to get rid of the debug warnings.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Disable client authentication with certificates

2013-12-09 Thread Wolfgang Breyha
On 2013-12-07 10:08, Stefan Gofferje wrote:
 On 12/03/2013 09:28 PM, Stefan Gofferje wrote:
 So why does Thunderbird ask me which certificate to use for
 authentication? Does my Cyrus ask for a client certificate or does it
 not? ^^
 
 Nobody a clue?

It depends. On IMAPS/POP3S ports cyrus never asks for client certs. On the
other hand it always asks for them doing STARTTLS. That's caused by the way
tls_init_serverengine() is called in imapd.c and pop3d.c.

You can either connect to ports 993/995 to prevent the use of client certs
or you can completely disable client certs with this patch (still works on
2.4.17):


# cat SOURCES/cyrus-imapd-2.3.14-disable_clientcerts.patch
diff -urN cyrus-imapd-2.3.14.orig/imap/imapd.c cyrus-imapd-2.3.14/imap/imapd.c
--- cyrus-imapd-2.3.14.orig/imap/imapd.c2009-05-06 14:05:17.0 
+0200
+++ cyrus-imapd-2.3.14/imap/imapd.c 2009-05-06 14:09:48.0 +0200
@@ -6764,7 +6764,7 @@

 result=tls_init_serverengine(imap,
 5,/* depth to verify */
-!imaps,   /* can client auth? */
+0,/* can client auth? */
 !imaps);  /* TLS only? */

 if (result == -1) {
diff -urN cyrus-imapd-2.3.14.orig/imap/pop3d.c cyrus-imapd-2.3.14/imap/pop3d.c
--- cyrus-imapd-2.3.14.orig/imap/pop3d.c2009-05-06 14:05:17.0 
+0200
+++ cyrus-imapd-2.3.14/imap/pop3d.c 2009-05-06 14:10:05.0 +0200
@@ -1077,7 +1077,7 @@

 result=tls_init_serverengine(pop3,
 5,/* depth to verify */
-!pop3s,   /* can client auth? */
+0,/* can client auth? */
 !pop3s);  /* TLS only? */

 if (result == -1) {
---

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Disable client authentication with certificates

2013-12-09 Thread Wolfgang Breyha
On 2013-12-09 16:59, Stefan Gofferje wrote:
 That worked fine :). Thanks. Is it planned to integrate your patch into
 Cyrus? It *is* kinda illogical to ask for a client cert when client cert
 authentication is explicitly disabled ^^.

My patch is not suitable for general use. IMO client cert requests should
either depend on a new option or on the availability of configured CAs.
Both is possible, but I'm not aware of the reason why client certs are
requested historically.

I would simply make it dependent of CA availability.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Disable client authentication with certificates

2013-12-09 Thread Wolfgang Breyha
On 2013-12-09 18:10, Wolfgang Breyha wrote:
 I would simply make it dependent of CA availability.

proposed patch for that:
https://bugzilla.cyrusimap.org/show_bug.cgi?id=3830

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


bugzilla HTTPS broken

2013-12-09 Thread Wolfgang Breyha
Hi!

http://bugzilla.cyrusimap.org/ is redirected to HTTPS. That's good.

But then the site is completely broken, since all links still lead to HTTP
and firefox rejects to load CSS, JS, ... until explicitly unblocking
unencrypted content.

Please either allow HTTP again, or fix HTTPS.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


last subscription entry lost after migration

2013-01-08 Thread Wolfgang Breyha
Hi!

We did our migration some time ago from 2.3.16 to 2.4.x (I think it was 2.4.12
back then).

We recognized now that lots of users (~50k of our 100k userbase) lost their
subscription to their last entry, which in most cases was INBOX.Trash. The
piled up junk in all these unseen but existing Trash-Folders was the main
cause we recognized it at all.

I'm currently checking the source of both versions to get an idea what happend
while the mailboxes moved from one backend to the other, but have no clue yet.

Our subscriptions_db format was flat on 2.3 and still is flat.

Has somebody else seen such behaviour?

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: last subscription entry lost after migration

2013-01-08 Thread Wolfgang Breyha
Wolfgang Breyha wrote, on 08.01.2013 15:53:
 I'm currently checking the source of both versions to get an idea what happend
 while the mailboxes moved from one backend to the other, but have no clue yet.
 
 Our subscriptions_db format was flat on 2.3 and still is flat.

Looking at the list of affected users it seems that another step is involved.
We already migrated from 2.2 to 2.3 some years ago. Most of the affected users
had our standard subscriptions (Drafts, Sent, Templates, Trash) and never
changed it. The *.sub files moved from 2.2 to 2.3 and never got changed. 2.4
didn't like the last line then as it seems. Maybe a missing newline from 2.2?

Still checking...

Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: How to get rid of reserved mailboxes?

2012-12-21 Thread Wolfgang Breyha
Hi!

Frank Richter wrote, on 21.12.2012 12:00:
 In this process we've got one reserved mailbox in a backend's mailboxes.db:
 user.xyz.bla   2 j xyzlrswipkxtecda

I would try to stop cyrus on the backend, then look what
ctl_mboxlist -mw
says. If that looks sane and only talks about the mentioned mailbox then try
ctl_mboxlist -m
to fix it. If another -mw is silent then restart cyrus.

Do not try ctl_mboxlist while cyrus is running!

Usually ctl_mboxlist -m is executed in cyrus.conf on startup on a backend.
Do you have this entry?

START {
  
  mupdatepush   cmd=ctl_mboxlist -m
  
}

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Another 2.4 upgrade horror story

2012-09-26 Thread Wolfgang Breyha
Simon Matter wrote, on 26.09.2012 06:58:
 I have not used freedup for restoring the hardlinks but I'm interested in
 the patch. If it's not big could you post it here?

Sure! attached.

I built a RPM based on
http://pkgs.repoforge.org/freedup/freedup-1.5.3-1.rf.src.rpm
and latest source.
But building based on
http://www.freedup.org/freedup-1.6-2.src.rpm
should work as well.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

--- freedup-1.6/freedup.c.orig	2011-02-04 08:22:15.0 +0100
+++ freedup-1.6/freedup.c	2011-11-11 10:52:24.788733835 +0100
@@ -613,7 +613,7 @@
 	 */
 	if( mktemp(tmpfilename) == NULL )
 	{
-	perror(There is no unique temporory file name.);
+	perror(There is no unique temporary file name.);
 	}
 	if( dirmtime!=0 )
 	{
@@ -628,7 +628,7 @@
 	if( lstat(tmpfilename,tstat) != 0 )
 	{
 	/*
-	 * The errror needs not to be catched, since it is wanted
+	 * The error needs not to be catched, since it is wanted
 	 * that no file exists with the target name
 	 */
 	rename( bname, tmpfilename );
@@ -643,12 +643,23 @@
 	}
 	if( lnk( symaname, bname ) != 0 )
 	{
-	perror(Linking failed.);
-	}
-	if( unlink( tmpfilename ) != 0 )
-	{
-	perror(Unlink failed.);
-	}
+	// linking failed! try to move original in place again and
+	// log that fact
+	fprintf(stderr, Linking failed. Trying roleback: \%s\, bname);
+	if ( rename( tmpfilename, bname ) != 0 )
+	{
+		// moving old file in place again failed.
+		// at least log that -v
+		fprintf(stderr, unable to rename: \%s\, tmpfilename);
+	}
+	}
+	else 
+	// unlink renamed original only of linking was successful
+	if( unlink( tmpfilename ) != 0 )
+	{
+		// unlinking failed! log that -v
+		fprintf(stderr, Unlink failed: \%s\, tmpfilename);
+	}
 	if( (dirmtime!=0)  (gotdirtime!=0) )
 	{
 	utimecache.actime  = dstat.st_atime;

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus

Re: Another 2.4 upgrade horror story

2012-09-25 Thread Wolfgang Breyha
Sebastian Hagedorn wrote, on 25.09.2012 14:01:
 I realize that some of our problems were caused by infrastructure that's 
 not up to current standards, but nonetheless I would really urge you to 
 never again use an upgrade mechanism like that. Give admins a chance to 
 upgrade indexes in the background and over time.

There is such an upgrade path using a murder environment and moving mailboxes
between backends. We used that for our 150k user infrastructure and had no IO
headaches at all. It was a good moment to update distribution, filesystems,
hardware,  as well.

I tested conversion speed from 2.3 to 2.4 on about 100 mailboxes and it was
pretty obvious that touching all our mailboxes in one shot is clearly
impossible without unreasonable downtime.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Another 2.4 upgrade horror story

2012-09-25 Thread Wolfgang Breyha
Janne Peltonen wrote, on 25.09.2012 15:34:
 Could you elaborate on that? I considered that option, but seeing as moving
 even a couple dozen users from a backend to another using RENAME takes hours
 and one backend contains thousands of users, I decided to just live with the 
 ~1
 day of unbearable slowness. Or do you know of a fast way?

Time was not the limiting factor for us. Availability and safety of our
mailboxes was. Nobody can guarantee you that the migration works out
flawlessly. If moving one mailbox fails I have troubles with exactly one
mailbox. If reconstruction of one mailbox fails while migrating hard from 2.3
to 2.4 your system is down even longer. And we had a couple of problematic
mailboxes as partly documented on this mailinglist;-)

We had 5 backend stores and have 6 now. Complete migration of our 150k users
with ~22TB took about 3 or 4 month. Including building the machines,
requesting storage, etc...

But you can't have less headache then moving mailboxes from backend to backend.

In detail I
*) check for active sessions on the mailbox
*) lock the mailbox by denying access via userdeny.db
*) move the mailbox
*) unlock it

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: Another 2.4 upgrade horror story

2012-09-25 Thread Wolfgang Breyha
On 2012-09-25 19:05, Simon Beale wrote:
 The only gotcha I experienced was I forgot that cyrus was configured to
 hardlink mail, which of course was no longer the case after each mailbox
 was migrated, so my disk usage exploded. (But easily fixed/restored once
 identified).

What did you use for restoring the hardlinks? freedup as well?

I'm asking because I found a bug in freedup causing dataloss. I already
sent a patch fixing it to the author of freedup last november, but he
didn't release a new version yet.

In case cyr_expire is running while freedup tries to hardlink files it is
possible to loose both the source freedup wants to link to and the copy
freedup still removes on error. Running cyr_expire and freedup (up to
1.6-2) together is a really bad idea.

If it's of interest I can provide my patch here, too.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


Re: body sieve extension

2012-02-17 Thread Wolfgang Breyha
On 2012-02-17 20:55, Fabio S. Schmidt wrote:
 Hi !
 
 Does Cyrus imap 2.4.13 support the body sieve extension? I'm trying to
 use it but fails with this message:

Sure, if you tell him to:

man imapd.conf
sieve_extensions: ...
body is not supported by default.

Greetings, Wolfgang

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: Cyrus 2.4.13 memory use

2012-02-08 Thread Wolfgang Breyha
David Carter wrote, on 08.02.2012 17:19:
 It looks like 3000 IMAP sessions are going to take around 8 GBytes of RAM 
 just to run, and we will need to buy additional RAM for buffer cache. This 
 isn't the end of the world: memory is cheap. I'm just curious if anyone 
 else saw a similar increase when upgrading from 2.3 to 2.4.

Short answer. Yes, I did;-)

2.3 on RHEL5 32bit = 2.4 on RHEL6 64bit and memory usage is more then
doubled. My two old frontends had 4GB (completely exhausted, some swap) each,
now I'm using three VMs with 10 (6.5 used).

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: [SOLVED] Re: Set quota none using Cyrus::IMAP::Admin

2012-01-18 Thread Wolfgang Breyha
On 2012-01-18 14:18, Greg Banks wrote:
 And second setting
 -setquota(-id-, STORAGE, -1)
 resulting in
 SETQUOTA id (STORAGE -1)
 what Bron suggested. That should also work IMO. At least on 2.4.12+.
 
 And that isn't correct according to RFC2087.  It works only because the
 server is deliberately not enforcing syntax correctly, to workaround a bug in 
 a
 different part of the code.

Yes, it's wanted behaviour;-) cyrus uses quota -1 if a quotaroot is set,
but quota is unlimited. If a mailbox is xfer'ed cyrus uses it itself after
some bugfixes when dumping the mailbox. eg.
https://bugzilla.cyrusimap.org/show_bug.cgi?id=3188
and
https://bugzilla.cyrusimap.org/show_bug.cgi?id=3559

In 3559 Bron said, that maybe 2.5 will handle that differently.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: Set quota none using Cyrus::IMAP::Admin

2012-01-17 Thread Wolfgang Breyha
Bron Gondwana wrote, on 17.01.2012 11:36:
 On Tue, Jan 17, 2012, at 03:57 PM, Ram wrote:
 http://www.manpagez.com/man/3/Cyrus::IMAP::Admin/
 There is a setquota function which should accept none for removing 
 quota. But that does not work
 
 How do I set unlimited quota using the setquota function
 
 Does '-1' work?

Setting an empty quota works:

use Cyrus::IMAP::Admin;

print setting some quota\n;
my $quotaroot = user.mailboxid;
my @quotaargv = ($quotaroot, STORAGE, 500);
$res = $backend-setquota(@quotaargv);

print setting \unlimited\\n;
@quotaargv = ($quotaroot);
$res = $backend-setquota(@quotaargv);

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: Set quota none using Cyrus::IMAP::Admin

2012-01-17 Thread Wolfgang Breyha
Ram wrote, on 17.01.2012 12:03:
 That means we omit the word STORAGE , thanks .. will try that.

Yes. I'm always setting some quota before to get it into a defined state
to remove it afterwards. I use it for several years now and recently moved
~100k users without any troubles.

Maybe you have to check/fix your quotaroots before, too.

I had to do that in the past migrating from older cyrus releases. Maybe it's
not necessary anymore.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: [SOLVED] Re: Set quota none using Cyrus::IMAP::Admin

2012-01-17 Thread Wolfgang Breyha
Ram wrote, on 17.01.2012 12:17:
 I am using cyrus-imapd-2.4.12-2
 As Wolfgang suggested using
 $imap-setquota(user/$user) removed the quota.

Looking at the code of Cyrus::IMAP::Admin there is no code checking for none
or something like that. There are two ways to craft a proper IMAP command.
First the way I described setting no STORAGE argument at all resulting in:
SETQUOTA id ()
to remove quota. And second setting
-setquota(-id-, STORAGE, -1)
resulting in
SETQUOTA id (STORAGE -1)
what Bron suggested. That should also work IMO. At least on 2.4.12+.

The man page of Cyrus::IMAP::Admin does not describe how to remove quota at
all. Neither none nor anything else. Nothing wrong in that part so far.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: Cyrus 2.4.13beta1 Released

2011-12-28 Thread Wolfgang Breyha
On 2011-12-28 01:59, Andrew Morgan wrote:
 A quick read of the code makes me think that this only crashes a backend 
 imapd process that is performing the mailbox move between partitions.  Is 
 that correct?

That is correct.

 Does this have any effect on the mupdate master (running 2.4.12)?

mupdate master wont crash if you mean that. But you end up with different
mailbox entries on backend and mupdate. ctl_mboxlist -m is needed to get
it in sync again. Even more repairs are required on the backend to fix the
moved mailbox IIRC. And ACLs need to be checked. I'm not sure anymore what
exactly had to be done to repair it completely. But it was PITA enough to
fix it fast;-) Don't know why Bron missed my report/fix for 2.4.11 since it
was already in bugzilla ready for 2.4.12 release.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: Cyrus 2.4.13beta1 Released

2011-12-28 Thread Wolfgang Breyha
On 2011-12-28 14:07, Bron Gondwana wrote:
 Sorry - I have probably missed a few things along the way!
 
 Is there anything still outstanding to add now?

Except the lmtp session-ids, no;-)

 Are you happy with the fix that I'm proposing to run with (only push
 the MUPDATE from the new backend after the DUMP, so that the new
 backend chooses the servername)?

Oh, sorry. I mixed bugs. I was referring to the SEGV on partition move on
the same backend (#3563). Andrew referred to sync issues.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: Cyrus 2.4.13beta1 Released

2011-12-24 Thread Wolfgang Breyha
On 2011-12-24 01:15, Bron Gondwana wrote:
 Please send any feedback to the cyrus-devel mailing list.
 I'm hoping to have a stable 2.4.13 out by the end of the
 year.

Bron, please!
https://bugzilla.cyrusimap.org/show_bug.cgi?id=3598

Merry Xmas, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: mailbox referrals in 2.4.12

2011-12-15 Thread Wolfgang Breyha
Andrew Morgan wrote, on 14.12.2011 19:38:
 In that case, I should keep the original behavior in cmd_list.  Here is an 
 updated patch that still honors disable_referrals when setting 
 supports_referrals.

Your patch still removes the disable_referrals from section 2819ff.

And I still suggest using suppress_capabilites instead of waking the zombi...
patch attached.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

diff -urN cyrus-imapd-2.4.12.orig/imap/imapd.c cyrus-imapd-2.4.12/imap/imapd.c
--- cyrus-imapd-2.4.12.orig/imap/imapd.c	2011-10-04 21:53:03.0 +0200
+++ cyrus-imapd-2.4.12/imap/imapd.c	2011-12-15 13:22:33.0 +0100
@@ -5979,7 +5979,9 @@
 clock_t start = clock();
 char mytime[100];
 
-if (listargs-sel  LIST_SEL_REMOTE) supports_referrals = !disable_referrals;
+if ((listargs-sel  LIST_SEL_REMOTE) 
+		(!capa_is_disabled(MAILBOX-REFERRALS)))
+	supports_referrals = !disable_referrals;
 
 list_callback_calls = 0;
 
diff -urN cyrus-imapd-2.4.12.orig/lib/imapoptions cyrus-imapd-2.4.12/lib/imapoptions
--- cyrus-imapd-2.4.12.orig/lib/imapoptions	2011-10-04 21:53:03.0 +0200
+++ cyrus-imapd-2.4.12/lib/imapoptions	2011-12-15 13:26:57.0 +0100
@@ -968,8 +968,9 @@
authentication load on the respective backend server. */
 
 { proxyd_disable_mailbox_referrals, 0, SWITCH }
-/* Set to true to disable the use of mailbox-referrals on the
-   proxy servers. */
+/* Option removed in 2.4.13. Use 
+   suppress_capabilities: MAILBOX-REFERRALS 
+   instead */
 
 { proxyservers, NULL, STRING }
 /* A list of users and groups that are allowed to proxy for other
diff -urN cyrus-imapd-2.4.12.orig/lib/imapopts.c cyrus-imapd-2.4.12/lib/imapopts.c
--- cyrus-imapd-2.4.12.orig/lib/imapopts.c	2011-10-04 22:03:49.0 +0200
+++ cyrus-imapd-2.4.12/lib/imapopts.c	2011-12-15 13:24:06.0 +0100
@@ -547,9 +547,6 @@
   { IMAPOPT_PROXYD_ALLOW_STATUS_REFERRAL, proxyd_allow_status_referral, 0, OPT_SWITCH,
 {(void*)0},
 { { NULL, IMAP_ENUM_ZERO } } },
-  { IMAPOPT_PROXYD_DISABLE_MAILBOX_REFERRALS, proxyd_disable_mailbox_referrals, 0, OPT_SWITCH,
-{(void*)0},
-{ { NULL, IMAP_ENUM_ZERO } } },
   { IMAPOPT_PROXYSERVERS, proxyservers, 0, OPT_STRING,
 {(void *)(NULL)},
 { { NULL, IMAP_ENUM_ZERO } } },
diff -urN cyrus-imapd-2.4.12.orig/lib/imapopts.h cyrus-imapd-2.4.12/lib/imapopts.h
--- cyrus-imapd-2.4.12.orig/lib/imapopts.h	2011-10-04 22:03:49.0 +0200
+++ cyrus-imapd-2.4.12/lib/imapopts.h	2011-12-15 13:23:34.0 +0100
@@ -173,7 +173,6 @@
   IMAPOPT_PROXY_PASSWORD,
   IMAPOPT_PROXY_REALM,
   IMAPOPT_PROXYD_ALLOW_STATUS_REFERRAL,
-  IMAPOPT_PROXYD_DISABLE_MAILBOX_REFERRALS,
   IMAPOPT_PROXYSERVERS,
   IMAPOPT_PTS_MODULE,
   IMAPOPT_PTLOADER_SOCK,
diff -urN cyrus-imapd-2.4.12.orig/man/imapd.conf.5 cyrus-imapd-2.4.12/man/imapd.conf.5
--- cyrus-imapd-2.4.12.orig/man/imapd.conf.5	2011-10-04 22:03:49.0 +0200
+++ cyrus-imapd-2.4.12/man/imapd.conf.5	2011-12-15 13:27:43.0 +0100
@@ -820,8 +820,9 @@
 connections that these referrals would cause, thus resulting in a higher
 authentication load on the respective backend server. 
 .IP \fBproxyd_disable_mailbox_referrals:\fR 0 5
-Set to true to disable the use of mailbox-referrals on the
-proxy servers. 
+Removed in 2.4.13. Use
+suppress_capabilities: MAILBOX-REFERRALS
+instead. 
 .IP \fBproxyservers:\fR none 5
 A list of users and groups that are allowed to proxy for other
 users, separated by spaces.  Any user listed in this will be

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/

Re: mailbox referrals in 2.4.12

2011-12-15 Thread Wolfgang Breyha
Wolfgang Breyha wrote, on 15.12.2011 13:42:
 Your patch still removes the disable_referrals from section 2819ff.
 
 And I still suggest using suppress_capabilites instead of waking the zombi...
 patch attached.

Filed a bug...
https://bugzilla.cyrusimap.org/show_bug.cgi?id=3615

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: mailbox referrals in 2.4.12

2011-12-14 Thread Wolfgang Breyha
Andrew Morgan wrote, on 14.12.2011 01:15:
 I worked up a simple patch against 2.4.12 which seems to work in my test 
 environment.  See the attachment.

Wouldn't it be cleaner to remove the whole option
proxyd_disable_mailbox_referrals and use
suppress_capabilities: MAILBOX-REFERRALS
on the proxy servers instead?

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: lmtp session ids in murder env.

2011-11-15 Thread Wolfgang Breyha
Hi!

On 2011-11-11 23:43, Bron Gondwana wrote:
 Do you want to write up a patch for what you think is best?  My first
 thought is for the frontend to log a backend to frontend linking
 record... unless you can push the backend SESSIONID back in the
 frontend response somehow.

I attached my proposed patch to
https://bugzilla.cyrusimap.org/show_bug.cgi?id=3598

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


lmtp session ids in murder env.

2011-11-11 Thread Wolfgang Breyha
Hi!

lmtpd returns a session ID with his 250 ok SESSIONID=.

This includes the murders frontend sessionid. But this sessionid is never
written to syslog by lmtpd on frontends. Only the backends log their sessionid
when the frontend logs in.

Even if the frontend logs its own session id, there wont be a easily grep'ed
connection to the backends sessionid.

And here we have the second drawback for murders. Frontends tend to keep lmtp
sessions alive pretty long and backend sessionids never change until 
disconnected.

So, currently these sessionids don't help as much as expected in murder
environment.

On a single host they're very helpful.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: lmtp session ids in murder env.

2011-11-11 Thread Wolfgang Breyha
On 2011-11-11 23:43, Bron Gondwana wrote:
 Do you want to write up a patch for what you think is best?  My first
 thought is for the frontend to log a backend to frontend linking
 record... unless you can push the backend SESSIONID back in the
 frontend response somehow.

Sure, I'll try my best;-) Should be possible in the next weeks.

Maybe a backend should generate a new session-id on RSET?

But I'll take a look to the code first to check for possible solutions.

Greetings, Wolfgang

PS: May I point you to
https://bugzilla.cyrusimap.org/show_bug.cgi?id=3563
...this one really hurts and my fix works pretty well here.

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: cyrus.index file

2011-11-07 Thread Wolfgang Breyha
Eric Luyten wrote, on 07.11.2011 17:36:
 and ... busy servers will probably produce huge audit trace files ... Who
 is running production service with auditlog: 1 in their imapd.conf ?

I am. I patched cyrus 2.4 to get similar logs in custom format and use
auditlog since 2.4 for all our 100k users. No problem at all. On the other
hand not knowing which way a mail took until it was deleted by the user is not
an option.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


singleinstancestore obsolete?

2011-10-19 Thread Wolfgang Breyha
Hi!

Is singleinstancestore obsolete/useless in 2.4.(12)?

This option is read into singleinstance in lmtpd.c and nntpd.c, but never
used afterwards? Or did I miss something searching the source?

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: singleinstancestore obsolete?

2011-10-19 Thread Wolfgang Breyha
Bron Gondwana wrote, on 19.10.2011 12:27:
 On Wednesday, October 19, 2011 12:18 PM, Wolfgang Breyha wbre...@gmx.net 
 wrote:
 Hi!
 
 Is singleinstancestore obsolete/useless in 2.4.(12)?
 
 This option is read into singleinstance in lmtpd.c and nntpd.c, but never
 used afterwards? Or did I miss something searching the source?
 
 Hmm...
 
 r = append_fromstage(as, content-body, stage, 0,
  (const char **) flag, nflags, !singleinstance);
 
 Looks to me like you missed something.

Obviously;-) Sorry for that.

The main reason I was looking into these things was, that I'm searching for
the best way to migrate a 2.3.16 backend with ~4TB spools and ~80k users to
2.4. Unlike my other backends this one profits pretty much from
singleinstancestore (many massmailings) and I don't want to loose these
savings if possible.

Simply upgrading the backend is impossible. The index upgrades will kill this
machine.

Since replication is not a possible way from 2.3.16 to 2.4 I tried to figure
out if a simple XFER takes care about that. But it doesn't as far as I can tell.

Do you know of a possible way to do that? Even if it's not trivial in the
first place.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: singleinstancestore obsolete?

2011-10-19 Thread Wolfgang Breyha
Ramprasad wrote, on 19.10.2011 15:37:
 I think , writing a standalone index upgrade utility , like the ipurge ,
 seems to be a reasonable thing to do 
 
 
 If there was a light enough index upgrade possible ( only for inboxes ..
 not subfolders ) Then I could stop cyrus , fork probably around 100
 parallel upgrades take a 2-3 hour downtime and then start services again

Currently I'm considering the following way:
*) build a new backend with same partition count/names
*) output something like
   find ../partxx -type -f -links +2 -ls |sort to a file for every partition
   on the old backend. -ls maybe replaced by special -printf.
*) move mailboxes from 2.3 to 2.4 with rename keeping partitions the same
*) write a script reading find-output and relink all the files with same
   inodes. This can be done at any time and with low impact.

I think that should be pretty safe if the script has enough safty belts in
place. Mails moved or deleted in the meantime are a special case. Don't know
if it's worth to try hard to find them.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: singleinstancestore obsolete?

2011-10-19 Thread Wolfgang Breyha
On 2011-10-19 17:42, Simon Matter wrote:
 I think for the singleinstancestore, you can redo it after migration with
 tools like hardlink or http://www.freedup.org/. IIRC I did this once and
 it worked fine - I think I was using a simple bash script as you suggested
 above. The only problem could be that you need the extra space while
 migration is going on.

My first
find /var/spool/imap/partxx -type f -links +2 -printf
%10i,%3n,%9s,%C@,%c,%T@,%t,%u,%g,%#m,%p\n
finished and my current savings are 60GB on a 256GB(230 used) partition.
So, extra space is in fact a topic;-) This backend holds all our student
accounts. That's why the savings are that impressive.

With the list find provides I am able to run my short perl script several
times while migrating mailboxes to get space back very fast and with low IO
impact.

Running freedup(.org) is still a very good idea. Thanks a lot for the hint.
I tried it in dry run mode on one of my other backends containing only
XFERed mailboxes from our employees. It took about 2 hours to analyze a
256GB(165 used) partition with ~800k messages. Savings will be ~2,5GB. Not
that much, but still worth the time.

I used freedup -n -v -a -T -o '-name *.' -l /var/spool/... Memory
usage was ~300MB on x86_64.

hardlink (at least the version provided with RHEL6) is not suitable since
it hardlinks many cyrus.index files together because I've to compare on
file contents only and there is no option to exclude them.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: singleinstancestore obsolete?

2011-10-19 Thread Wolfgang Breyha
On 2011-10-19 22:35, Henrique de Moraes Holschuh wrote:
 rsync -H will also work, but it can be painful. YMMV.

Unfortunately rsync is not an option since I need to XFER the mailboxes to
do the 2.3=2.4 index upgrades. That's the only way to do it without long
downtime on a backend that large.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: mbpath output 2.4

2011-09-21 Thread Wolfgang Breyha
Bron Gondwana wrote, on 21.09.2011 09:17:
 Probably a bug.  Can you please file a bug and I'll fix it.

https://bugzilla.cyrusimap.org/show_bug.cgi?id=3556

Patch already attached;-)

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


mbpath output 2.4

2011-09-20 Thread Wolfgang Breyha
Hi!

On 2.3 if I ask a murder frontend server with mbpath user.x it displays
backend.fqdn!partition_name

On 2.4 I only get
Remote Mailbos: user.x

Is that intended behaviour? Is there another way to ask my frontend where a
mailbox is located instead on 2.4?

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


cyrus-master dies/exits on startup

2011-09-19 Thread Wolfgang Breyha
Hi!

I had this on 2.3.x already and today a brand new 2.4.11 cyrus-master died  as
well

On my murder frontends sometimes (~1 out of 10) cyrus-master dies/exits(?!)
right after forking the initial set of processes defined in cyrus.conf.

This initial set of mupdated/idled/lmtpd/imapd/pop3d processes are left in the
system, but cyrus-master is gone afterwards.

After killing the leftovers and restarting cyrus-master he usually survives.
And he never died/exited if he survived the initial execs.

The 2.3.x frontends are RHEL5/i386 and the 2.4.11 are RHEL6/x86_64.

I thought it is the heavy initial load on our frontends causing this, but the
2.4.11 frontend has no load or connection at all currently.

cyrus-master is started with -d -x /var/agentx/master -P 30

The log of the master says nothing unusual:
 Sep 19 14:20:32 jarvis master[1738]: process started
 Sep 19 14:20:32 jarvis master[1747]: about to exec 
 /usr/lib/cyrus-imapd/ctl_cyrusdb
 Sep 19 14:20:49 jarvis master[1786]: about to exec /usr/lib/cyrus-imapd/idled
 Sep 19 14:20:49 jarvis master[1738]: ready for work
 Sep 19 14:20:49 jarvis master[1789]: about to exec /usr/lib/cyrus-imapd/imapd
 Sep 19 14:20:49 jarvis master[1790]: about to exec /usr/lib/cyrus-imapd/imapd
 Sep 19 14:20:49 jarvis master[1791]: about to exec /usr/lib/cyrus-imapd/pop3d
 and some more exec, but no note about exiting.

My cyrus.conf:

START {
  recover   cmd=ctl_cyrusdb -r
  idled cmd=idled
}

SERVICES {
  mupdate   cmd=mupdate listen=3905 prefork=1

  Fimap cmd=imapd listen=imap prefork=5
  Fimapscmd=imapd -s listen=imaps prefork=2
  Fpop3 cmd=pop3d listen=pop3 prefork=3
  Fpop3scmd=pop3d -s listen=pop3s prefork=1
  Fsieveold cmd=timsieved listen=sieve-old prefork=0
  Fsievecmd=timsieved listen=sieve prefork=0

  Flmtp cmd=lmtpd listen=lmtp prefork=1 maxchild=30
}



My 2.3.x backends run a similar config (except mupdate) and never died on
startup yet.

Has somebody else seen this behavior already or should I try to get more
details? As a first step I allowed coredumps.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


expunge_days cyr_expire best practice

2011-09-12 Thread Wolfgang Breyha
Hi!

I'm currently preparing our murder migration from 2.3 to 2.4. Since we
already use delayed expunge and delete I try to fully understand the impact of
expunge_days: setting. Currently we use -X 2 with cyr_expire.

Since QRESYNC needs at least expunge_days: 7 as stated in man imapd.conf I
tried to figure out how to set it up right.

If I read the source right only mailbox.c:mailbox_close() and cyr_expire do
cleanup jobs on cyrus cache and unlink files.

mailbox_close() waits until expunge_days+8 after the index record was expired.
What are these 8 days for? Is this the minimum needed for QRESYNC mentioned in
man imapd.conf?

cyr_expire doesn't care about expunge_days at all. So I guess -X should be at
least = expunge_days, right?

Is
expunge_days: 7
and
cyr_expire -X 7
ok so far?

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: 2.4.7 mailbox rename looses mail

2011-04-06 Thread Wolfgang Breyha
Hi again!

It looks like these changes broke it:
http://git.cyrusimap.org/cyrus-imapd/commit/?id=463f7571f8aeca00630a2bc26ebf24fadf844b4c

Versions up to 2.4.6 should be fine. Only 2.4.7 and 2.4.8 prereleases are
affected.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


2.4.7 mailbox rename looses mail

2011-04-05 Thread Wolfgang Breyha
Hi!

If I do the following within Thunderbird 3.1.9:
*) create a folder test
*) create a subfolder within test called test2
*) copy a message to test
*) copy a message to test2
*) rename test to testx

the result in thunderbird is:
*) a folder testx with subfolder test2
*) both are *empty*

a reconstruct is needed to make them visible again:
$ reconstruct -r user..testx
user..testx uid 1 found - adding
user..testx
user..testx.test2 uid 1 found - adding
user..testx.test2

Renaming a folder again before reconstructing it wipes the message files from
disc.

I filed a bug:
http://bugzilla.cyrusimap.org/show_bug.cgi?id=3434

Regards, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


2.4.7 complains about mails named '0.'

2011-04-02 Thread Wolfgang Breyha
Hi!

I upgraded from 2.3.16 to 2.4.7 yesterday.

Doing a reconstruct on all mailboxes showed some messages like:
reconstruct[32741]: user.xx.Folder odd file
/var/spool/imap/user/xxx/Folder/0.
reconstruct[32741]: run reconstruct with -O to remove odd files

But this is a the first mail in this folder written with a older version of
cyrus? Is this a bug in 2.4, or is there an easy way to fix that? Wouldn't
hurt that much, because I got this message only about 10 times.

Regards, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: 2.4.7 complains about mails named '0.'

2011-04-02 Thread Wolfgang Breyha
Hi!

On 2011-04-02 11:59, Bron Gondwana wrote:
 Was there seriously a version of Cyrus that allows UID zero?  That's
 bogus.  Surely IMAP UIDs start at one.

I found some historic info;-) I used cyrus-imap 2.3.7 back then. I used
imapsync to migrate mailboxes from courier to cyrus. It happend an
exactly one mailbox, but on several folders there.

 If UID zero is allowed, I'll have to fix that code - and probably
 some other code which assumes UIDs are never zero...

Ok, if that's the case I'll rename that files to the first available UID
and reconstruct the folder.

Regards, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: 2.4.7 complains about mails named '0.'

2011-04-02 Thread Wolfgang Breyha
On 2011-04-02 14:19, Bron Gondwana wrote:
 Ooh... just a guess - but did you have autocreate patches?  I wonder if
 autocreate caused uidnext to be zero rather than one due to doing the
 append during the same lock as the create...

Yes, I'm using Simons SRPMS as a base with minor patches for syslogging
(like auditlog in 2.4 now). I think I really used autocreate back then. I
disabled it after a short while.

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: 2.4.7 complains about mails named '0.'

2011-04-02 Thread Wolfgang Breyha
On 2011-04-02 14:48, Bron Gondwana wrote:
 It seems more likely to me that your '0.' files are caused
 by some bug somewhere along the way.  Did you check them to
 see if they're duplicates of another message in that folder?

No, no duplicates so far. Since only one mailbox is affected I can't tell
for sure what happened some years ago;-)

Greetings, Wolfgang
-- 
Wolfgang Breyha wbre...@gmx.net | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/


Re: murder frontend CAPABILITY check

2008-11-26 Thread Wolfgang Breyha
Wolfgang Breyha wrote, on 25.11.2008 15:35:
 Am I right, that either
 capa_response(CAPA_PREAUTH);
 should return the needed caps for the frontends, too

I tried this, by adding CAPA_POSTAUTH in imapd.c:cmdloop() and my frontends
proxy IDLE to the backends again. This confirms my previous findings and I
filed a bug:
https://bugzilla.andrew.cmu.edu/show_bug.cgi?id=3121

Regards, Wolfgang Breyha
-- 
Wolfgang Breyha [EMAIL PROTECTED] | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: murder frontend CAPABILITY check

2008-11-26 Thread Wolfgang Breyha
Duncan Gibb wrote, on 26.11.2008 17:36:
 Could you post your patch, please?  Or attach it to the bug.

I'll post it here, since it's only a quick and dirty fix to have proof of
the bug.

Regards, Wolfgang
-- 
Wolfgang Breyha [EMAIL PROTECTED] | http://www.blafasel.at/
Vienna University Computer Center | Austria

diff -urN cyrus-imapd-2.3.13.orig/imap/imapd.c cyrus-imapd-2.3.13/imap/imapd.c
--- cyrus-imapd-2.3.13.orig/imap/imapd.c2008-11-15 23:40:36.0 
+0100
+++ cyrus-imapd-2.3.13/imap/imapd.c 2008-11-26 11:22:03.0 +0100
@@ -987,7 +987,7 @@
 const char *err;
 
 prot_printf(imapd_out, * OK [CAPABILITY );
-capa_response(CAPA_PREAUTH);
+capa_response(CAPA_PREAUTH|CAPA_POSTAUTH);
 prot_printf(imapd_out, ]);
 if (config_serverinfo) prot_printf(imapd_out,  %s, config_servername);
 if (config_serverinfo == IMAP_ENUM_SERVERINFO_ON) {

Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html

murder frontend CAPABILITY check

2008-11-25 Thread Wolfgang Breyha
Hi!

I recognized that IDLE was not working as expected on our murder setup. We've
two frontends, 3 backends and a dedicated mupdate server, all running 2.3.13.
idled is active on the backends.

I did some strace'ing on front- and backends and as far as I can tell, the
frontends do not proxy the IDLE command to the backends, because the frontends
think the backends are not CAPAable to do IDLE.

I searched the source and it seems that there is a problem with the capability
check the frontends do on the backends.

On one hand cyrus announces CAPABILITY in the greeting banner. But
CAPA_PREAUTH doesn't contain all of the caps the frontend wants to know. eg.
IDLE, MULTIAPPEND, RIGHTS and LIST-SUBSCRIBED.

On the other hand, the frontend is told by the protocol definition in
imap_proxy.c:107, that it should exclusively check the banner in backend.c:400
for the CAPS, which doesn't contain the needed info in pre_auth state.

Am I right, that either
capa_response(CAPA_PREAUTH);
should return the needed caps for the frontends, too, or the frontends
should'nt believe blindly in the banner capabilites?

Regards, Wolfgang Breyha
-- 
Wolfgang Breyha [EMAIL PROTECTED] | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: cyrus 2.3.11: cyr_expire can't remove deleted mailboxes

2008-03-31 Thread Wolfgang Breyha
Ernst Jeschek wrote, on 31.03.2008 10:24:
 Hello list members,
 
 we have delete_mode and expunge_mode set to delayed on our cyrus
 2.3.11 backend. When cyr_expire tries to remove deleted mailboxes, it
 fails with the following error:
 
   cyr_expire[24222]: can not connect to mupdate server for delete of 
 'DELETED.DELETED.user.username.folder.47EA470C.47EA773C'
   cyr_expire[24222]: couldn't authenticate to backend server : SASL library 
 not initialized 

https://bugzilla.andrew.cmu.edu/show_bug.cgi?id=3034

http://www.invoca.ch/pub/packages/cyrus-imapd/cyrus-imapd-2.3.11-3.src.rpm
and newer versions include the proposed fix.

Best regards, Wolfgang
-- 
Wolfgang Breyha [EMAIL PROTECTED] | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: 2.3.11 STARTTLS broken if tls_ca_file is defined

2007-12-16 Thread Wolfgang Breyha
Jure Pečar wrote:
 Interesting ... works for me with 2.3.11rc1 and sylpheed. Using imaps on
 port 993 only.

As I mentioned ... IMAPS works for me too. Using STARTTLS on port 143
doesn't work.

Regards, Wolfgang
-- 
Wolfgang Breyha [EMAIL PROTECTED] | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html

Re: OT: Cyrus IMAP Interacting with Thunderbird 2.0

2007-04-30 Thread Wolfgang Breyha
Forrest Aldrich wrote, on 28.04.2007 18:41:
 It's been suggested that there may be something different about Cyrus in 
 the IMAP command sequence - but that seems very vague.  I don't see why 
 it shouldn't just work.  I can try recompiling the FreeBSD port and see 
 if that resolves it.  I'm sure my libraries are up-to-date, and 
 certainly if there were problems I would have seen it by now with other 
 functions.

Look at the thread starting here...
http://cyrusimap.web.cmu.edu/archive/message.php?mailbox=archive.info-cyrusmsg=43590
and
https://bugzilla.mozilla.org/show_bug.cgi?id=377900

...it's not thunderbirds fault and it's easily fixed by resetting your ACLs.

Regards, Wolfgang
-- 
Wolfgang Breyha [EMAIL PROTECTED] | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: OT: Cyrus IMAP Interacting with Thunderbird 2.0

2007-04-30 Thread Wolfgang Breyha
Jo Rhett wrote:
 
 On Apr 30, 2007, at 6:38 AM, Wolfgang Breyha wrote:
 ...it's not thunderbirds fault
 
 Um... I disagree.  So do the thunderbird developers.

No, they don't. See https://bugzilla.mozilla.org/show_bug.cgi?id=377900#c11

cyrus has to support 'c' and 'd' flag as required by RFC 4314. They made a
quick fix to check the RFC 4314 't' flag, too. And they opened a second
'bug' to implement full RFC 4314 support. See
https://bugzilla.mozilla.org/show_bug.cgi?id=310958

 Fixing the ACL is a backwards hack to support an obsolete IMAP
 specification.  Updating Thunderbird to properly read the modern flags
 was the appropriate fix, which has already been committed to the tree
 and may appear in the next update.

Again, no. RFC 4314 requires the server to support 'c' and 'd' flag from
RFC 2068. And cyrus does it. But as I meantioned before there was a change
from cyrus 2.3.7 to 2.3.8. At least 2.3.7 added 'c' and 'd' on the fly
while answering ACL requests if the appropriate RFC 4314 flags were set in
the stored ACL. cyrus 2.3.8 now writes the 'c' and 'd' flag into the stored
ACL. If you're upgrading from 2.3.7 to 2.3.8 some people have missing 'c'
and 'd' flags in their ACLs and they are not added automatically anymore.
This get's fixed by simply setting the same ACLs again since cyrus sets 'c'
and 'd' accordingly now.

Regards, Wolfgang
-- 
Wolfgang Breyha [EMAIL PROTECTED] | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: cyrus 2.3.x and thunderbird 2.x delete issue

2007-04-20 Thread Wolfgang Breyha
Sebastian Hagedorn wrote, on 20.04.2007 10:00:
 Hm, are there any other conditions necessary? Because I just tried TB 2 
 with our Cyrus 2.3.8 server and I was able to delete a message in my INBOX 
 just fine. I didn't actually check the protocol, so I can't see if TB did 
 myrights and getacl and - if so - what the replies were ...

Check your cyrus.header files. Maybe you upgraded your installation from older
cyrus and there are still c and d flags set on your folders. Mailboxes
here only have RFC 4314 flags set.

Regards, Wolfgang
-- 
Wolfgang Breyha [EMAIL PROTECTED] | http://www.blafasel.at/
Vienna University Computer Center | Austria

Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: cyrus 2.3.x and thunderbird 2.x delete issue

2007-04-20 Thread Wolfgang Breyha
Sebastian Hagedorn wrote, on 20.04.2007 11:00:
 I'm not sure I understand why. Are you saying that a 2.3.8 installed from 
 scratch behaves differently than an upgraded one?

I don't know;-) Most of the mailboxes here have lrswipkxtea set. And
searching the source I found code in cmd_myrights, which adds c and d if
they are missing. So I thought cmd_getacl should do that, too.

But it seems there was a change from 2.3.7 to 2.3.8 in handling legacy flags.
At least a diff on lib/acl.c makes me think so. In 2.3.7 the flags where added
on-the-fly and in 2.3.8 they are added permanently. If I'm right that means
that I've to update all my ACLs to fix that.

Regards, Wolfgang
-- 
Wolfgang Breyha [EMAIL PROTECTED] | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: cyr_expire SIGSEGV

2007-01-24 Thread Wolfgang Breyha
Wolfgang Breyha wrote, on 23.01.2007 13:44:
 It seems that cyr_expire only crashes on folders that where touched by
 ipurge before.

I was able to reproduce that.

I deleted some messages via IMAP in Trash folder. I EXPUNGEd the folder.

After that I had
-rw--- 1 cyrus mail 1529752 24. Jan 14:21 cyrus.cache
-rw--- 1 cyrus mail 576 24. Jan 14:23 cyrus.expunge
-rw--- 1 cyrus mail 183 11. Jun 2006  cyrus.header
-rw--- 1 cyrus mail  142096 24. Jan 14:23 cyrus.index

Then a started ipurge -fX -d 31 user..Trash. ipurge removed _no_
message. But the databases looked like
-rw--- 1 cyrus mail 1525368 24. Jan 14:24 cyrus.cache
-rw--- 1 cyrus mail 576 24. Jan 14:23 cyrus.expunge
-rw--- 1 cyrus mail 183 11. Jun 2006  cyrus.header
-rw--- 1 cyrus mail  142096 24. Jan 14:24 cyrus.index

It seems that ipurge removes info from cyrus.cache needed by cyr_expire later,
because after these steps cyr_expire crashes exactly when working on this 
folder.

Regards, Wolfgang Breyha
-- 
Wolfgang Breyha [EMAIL PROTECTED] | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: cyr_expire SIGSEGV

2007-01-23 Thread Wolfgang Breyha
Hi again!

I compiled a cyr_expire with debug symbols... the backtrace looks like:
#0  process_records (mailbox=0xbfb1786c, newindex=0x9558f68,
index_base=0xb66f9000 Address 0xb66f9000 out of bounds, exists=65,
deleted=0x9559158, numdeleted=0xbfb14794, quotadeleted=0xbfb14768,
numansweredflag=0xbfb14790, numdeletedflag=0xbfb1478c,
numflaggedflag=0xbfb14788, newcache=0x9558e00,
new_cache_total_size=0xbfb14780, expunge_fd=-1, last_offset=0,
decideproc=0x804cc10 expire_cb, deciderock=0xbfb184e4, expunge_flags=2)
at mailbox.c:1932
1932cacheitem = CACHE_ITEM_NEXT(cacheitem);
#1  0x080532d3 in mailbox_expunge (mailbox=0xbfb1786c, decideproc=0x804cc10
expire_cb, deciderock=0xbfb184e4, flags=Variable flags is not
available.) at mailbox.c:2308
#2  0x0804cb50 in expire (name=0xbfb17d9d user.mxx.Trash,
matchlen=22, maycreate=1, rock=0xbfb184e4) at cyr_expire.c:224
#3  0x0805aa15 in find_cb (rockp=0xbfb18070, key=0xb69881b4 Address
0xb69881b4 out of bounds, keylen=22, data=0xb69881d0 Address 0xb69881d0
out of bounds, datalen=34) at mboxlist.c:2035
#4  0x0808efce in myforeach (db=0x9558240, prefix=0xbfb180b2 *, prefixlen=0,
goodp=0x805b480 find_p, cb=0x805a880 find_cb, rock=0xbfb18070,
tid=0x0) at cyrusdb_skiplist.c:989
#5  0x08058082 in mboxlist_findall (namespace=0x0, pattern=0xbfb18510 *,
isadmin=1, userid=0x0, auth_state=0x0, proc=0x804c7d0 expire,
rock=0xbfb184e4) at mboxlist.c:2227
#6  0x0804cfa7 in main (argc=6, argv=Cannot access memory at address 0x4

It seems that cyr_expire only crashes on folders that where touched by
ipurge before.

I've
  purgetrashcmd=ipurge -fX -d 31 user.*.Trash at=0200
  purgejunk cmd=ipurge -fX -d 60 user.*.Junk at=0300
running before cyr_expire (at=0400)

Every time I look into a folder which causes cyr_expire to coredump I find eg 
...
-rw--- 1 cyrus mail4 Jan 23 02:00 cyrus.cache
-rw--- 1 cyrus mail  124 Jan 23 13:31 cyrus.cache.NEW
... a cyrus.cache.NEW file that is larger then the old one.

Putting a debug printf in the loop
for (cache_ent = 0; cache_ent  NUM_CACHE_FIELDS; cache_ent++) {
cacheitem = CACHE_ITEM_NEXT(cacheitem);
}
... shows that cache_ent always is 0 if the crash occures, so it seems that
cacheitembegin = cacheitem = mailbox-cache_base + cache_offset;
is invalid at that moment.

Regards, Wolfgang Breyha
-- 
Wolfgang Breyha [EMAIL PROTECTED] | http://www.blafasel.at/
Vienna University Computer Center | Austria



Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


cyr_expire SIGSEGV

2007-01-18 Thread Wolfgang Breyha
Hi!

I've a cyrus-imapd-2.3.7-7 built from the src.rpm at invoca.ch running on FC5.

I use the delayed expunge feature.

My cyrus.conf therefor has
delprune  cmd=cyr_expire -E 3 -X 2 at=0400

Most of the time cyr_expire runs it crashes with SIGBUS or SIGSEGV.

It also crashes if I start it manually after it crashed during the night.
Doing a strace and reconstruct -ring the user last accessed makes
cyr_expire happy again... at least for this users mailboxes.

I've activated coredumps and the backtrace always shows:
#0  0x0804e6f0 in cyrus_mutex_free ()
#1  0x08053213 in cyrus_mutex_free ()
#2  0x0804cb50 in expire ()
#3  0x0805a955 in mboxlist_findall ()
#4  0x0808ef0e in mboxlist_findall ()
#5  0x08057fc2 in mboxlist_findall ()
#6  0x0804cfa7 in expire ()
#7  0x004554e4 in __libc_start_main () from /lib/libc.so.6
#8  0x0804c6f1 in ?? ()

The last lines from strace shows write access to the quota file
stat64(/var/spool/imap/user/x/Trash/cyrus.expunge,
{st_mode=S_IFREG|0600, st_size=736, ...}) = 0
mmap2(NULL, 736, PROT_READ, MAP_SHARED, 9, 0) = 0xb66ba000
lseek(9, 736, SEEK_SET) = 736
open(/var/spool/imap/user/x/Trash/cyrus.expunge.NEW,
O_RDWR|O_CREAT|O_TRUNC, 0666) = 12
time(NULL)  = 1169137631
write(10, \0\0\0\357\0\0\0\0\0\0\0\t\0\0\0`\0\0\0P\0\0\0\0E\257?..., 96) = 96
_llseek(10, 0, [0], SEEK_SET)   = 0
read(10, \0\0\0\357\0\0\0\0\0\0\0\t\0\0\0`\0\0\0P\0\0\0\0E\257?..., 4096) = 96
_llseek(10, 96, [96], SEEK_SET) = 0
open(/var/lib/imap/quota/g/user.x, O_RDWR) = 13
fcntl64(13, F_SETLKW, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}) = 0
fstat64(13, {st_mode=S_IFREG|0600, st_size=16, ...}) = 0
stat64(/var/lib/imap/quota/g/user.x, {st_mode=S_IFREG|0600, st_size=16,
...}) = 0
fstat64(13, {st_mode=S_IFREG|0600, st_size=16, ...}) = 0
mmap2(NULL, 16, PROT_READ, MAP_SHARED, 13, 0) = 0xb66b9000
munmap(0xb66b9000, 16)  = 0
unlink(/var/lib/imap/quota/g/user.x.NEW) = -1 ENOENT (No such file or
directory)
open(/var/lib/imap/quota/g/user.x.NEW, O_RDWR|O_CREAT|O_TRUNC, 0666) = 14
fcntl64(14, F_SETLKW, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}) = 0
lseek(14, 0, SEEK_SET)  = 0
write(14, 30244719\n512000\n, 16) = 16
ftruncate(14, 16)   = 0
fsync(14)   = 0
fstat64(14, {st_mode=S_IFREG|0600, st_size=16, ...}) = 0
rename(/var/lib/imap/quota/g/user.x.NEW,
/var/lib/imap/quota/g/user.x) = 0
fcntl64(14, F_SETLKW, {type=F_UNLCK, whence=SEEK_SET, start=0, len=0}) = 0
close(14)   = 0
fcntl64(13, F_SETLKW, {type=F_UNLCK, whence=SEEK_SET, start=0, len=0}) = 0
close(13)   = 0
fstat64(12, {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb66b9000
time(NULL)  = 1169137631
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV (core dumped) +++

Any ideas?

Regards, Wolfgang Breyha



-- 
Wolfgang Breyha [EMAIL PROTECTED] | http://www.blafasel.at/
Vienna University Computer Center | Austria


Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html