Cyrus and performance

2001-09-13 Thread Leena Heino

We have about 11000 users on our mailserver and the server seems to be
running out of resources ie. it seems to slow down when a lot of users
(ie. 500-1000 imapd process are running in the system) are simultaneously
reading their mail.

The current system consists of:
- Sendmail 8.11.6
- Cyrus IMAP 1.6.25 and SASL 1.5.24
- Sun Ultra Enterprise 450 with 4 cpus (400MHz), 2GB RAM and cyrus mail
directories are on software raid filesystem (stripe+mirror and translog).

What would you do to improve server's performance?
We are considering following solutions:
- moving cyrus mail files to hardware raid filesystem
- Upgrade to Cyrus IMAP 2.0.16 or newer
- Cyrus Murder of imap cluster
- multiple Cyrus IMAP servers

If multiple Cyrus IMAP servers is to be used then Cyrus Murder would seem
like an ideal solutuon as users would only need to know the address of
only one IMAP server. The problem seems to be that there seems to be very
little of documentation about Cyrus Murder installation and/or management.
Does anyone have any experience about installing and/or using Cyrus
Murder?

  -- Leena Heino ([EMAIL PROTECTED])




Which versio to upgrade to?

2001-09-26 Thread Leena Heino

We are now using in Cyrus imap 1.6.25 and Cyrus SASL 1.5.24.

Due to performance problems we are now considering a version upgrade.
Which version would you recommend using?
Cyrus IMAP 2.0.16 + Cyrus SASL 1.5.24?
Cyrus IMAP 2.0.16 + Cyrus SASL 1.5.27?
Cyrus IMAP 2.1pre(CVS) + Cyrus SASL 1.5.24?
Cyrus IMAP 2.1pre(CVS) + Cyrus SASL 1.5.27?
Cyrus IMAP 2.1pre(CVS) + Cyrus SASL 2.x?

Are there plans to release an official release in the 2.0.x series after
the current 2.0.16?
Are there any serious bugs in 2.0.16 that are fixed in the 2.1pre
versions?
Are there plans to release official non beta release in the Cyrus
SASL 1.5.x series after the beta version 1.5.27?
Are the any serious bugs with Cyrus SASL 1.5.24 or in Cyrus SASL 1.5.27
that are fixed in Cyrus SASL 2.x versions?

  -- Leena Heino ([EMAIL PROTECTED])





Re: Migrating from wu-imap to Cyrus

2001-10-01 Thread Leena Heino

On Mon, 1 Oct 2001 [EMAIL PROTECTED] wrote:

> Here's an example of a messages that Cyrus rejected when I was
> testing loading Cyrus mailboxes from Unix mailboxes:
>
> From  Fri Sep 28 10:09:00 2001
> Date: Fri, 28 Sep 2001 10:09:00 -0500 (CDT)
> From: Postmaster
> Subject: Message from mail server
> Content-Length: 94
> Mime-Version: 1.0
> Status: RO
> X-IMAP: 923336730 178
>
> Delete.
> This is a system message.
>
> My script just carries on to the next message, which is fine in
> this case.
Is your script able to remove the "From " header from mails that are
to be converted?

I used this very simple but crude command to convert mailboxes:
cat user-mbox | formail -I "From " -s deliver -q user

>
>
> --
> -Gary Mills--Unix Support--U of M Academic Computing and Networking-
>

  -- Leena Heino ([EMAIL PROTECTED])




Re: Eudora, STARTTLS and the alternate port

2001-10-19 Thread Leena Heino

On Fri, 19 Oct 2001, Scott Adkins wrote:

> Okay, we just got bitten by the Eudora 5.x STARTTLS problem that was
> discussed last month.  We have the same problem where only those clients
> cannot negotiate a TLS connection properly, and thus fails to login at
> all.  So...
>
> Ken suggested removing or commenting out the following lines:
>
>   if (tlsonly) {
>   off |= SSL_OP_NO_SSLv2;
>   off |= SSL_OP_NO_SSLv3;
>   }
>
> I am wondering exactly what effect this will have on us... how does this
> affect clients that *do* TLS just fine, such as Mulberry, for instance?
> Would the other clients still use TLS and Eudora use SSLv3?
>
I've commented out the above lines as Ken suggested and then tried the
STARTTLS with pine4.40 and it seems to work nicely.

> Thanks,
> Scott
> --
>  +-=-=-=-=-=-=-=-=-=+=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=+=-=-=-=-=-=-=-=-+
>   Scott W. Adkinshttp://www.cns.ohiou.edu/~sadkins/
>UNIX Systems Engineer  mailto:[EMAIL PROTECTED]
> ICQ 7626282 Work (740)593-9478 Fax (740)593-1944
>  +-=-=-=-=-=-=-=-=-=+=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=+=-=-=-=-=-=-=-=-+
>  CNS, HDL Center, Suite 301, Ohio University, Athens, OH 45701-2979
>

  -- Leena Heino ([EMAIL PROTECTED])




Re: problem compiling cyrus-imapd-2.0.16 w/ cyrus-sasl-1.5.27

2001-11-26 Thread Leena Heino

On Mon, 26 Nov 2001, Thomas C. Meggs wrote:

>
> So no suggestions on this? =/ I'm definitely stuck.
>
Here's what I did. I did not have need fo kerberos support but the system
was Solaris with OpenSSL in /usr/local/ssl and BerkeleyDB in
/usr/local/BerkeleyDB.3.3

SASL-library:
cd cyrus-sasl-1.5.27
env LIBS="-lpam -lxnet" \
CPPFLAGS="-I/usr/local/BerkeleyDB.3.3/include" \
LDFLAGS="-R/usr/local/BerkeleyDB.3.3/lib -L/usr/local/BerkeleyDB.3.3/lib"
\
./configure \
--prefix=/usr/local \
--enable-static \
--enable-shared \
--with-pam \
--with-saslauthd=/var/state/saslauthd1 \
--with-rc4=/usr/local/ssl \
--with-des=/usr/local/ssl \
--disable-krb4 \
--disable-gssapi
make

the installation with root account:
make install
chmod 755 /usr/local/lib/sasl

Cyrus IMAP 2.0.16:
env LIBS="-lpam" \
CPPFLAGS="-I/usr/local/BerkeleyDB.3.3/include" \
LDFLAGS="-R/usr/local/BerkeleyDB.3.3/lib -L/usr/local/BerkeleyDB.3.3/lib"
\
./configure \
--with-cyrus-prefix=/usr/local/cyrus \
--with-statedir=/var/state/saslauthd \
--with-dbdir=/usr/local/BerkeleyDB.3.3 \
--with-perl=perl \
--with-tcl=/usr/local \
--with-auth=unix \
--without-krb \
--with-openssl=/usr/local/ssl \
--without-zephyr \
--without-notify \
--with-idle=idled \
--enable-murder \
--enable-netscapehack \
--with-sasl=/usr/local \
--without-libwrap \
--without-ucdsnmp
make depend

Before the real compile I had to change few lib paths in perl related
makefiles. add few library searchpath to makefiles in the line:
'LIBS'  => something
add a few dirs to searchpath:
'LIBS'  => ["-L/usr/local/BerkeleyDB.3.3/lib
-R/usr/local/BerkeleyDB.3.3 -ldb-3.3 -L/usr/local/ssl/lib and here is the
rest of the original line.

These are the files:
imap/Makefile.PL sieve/acap/Makefile.PL sieve/managesieve/Makefile.PL

After those fixes give the command:
make all
and proceed as usual.

> --tom
>
> -
> Thomas C. Meggs
> Assistant UNIX System Administrator
> Physics and Astronomy Network Infrastructure and Computing
> UNC Chapel Hill
> http://www.panic.unc.edu/
>
> Regards,
> Tom
>

-- 
  -- Leena Heino ([EMAIL PROTECTED])




mailboxes, db or flat

2002-01-17 Thread Leena Heino

We are consider upgrading Cyrus IMAP from 1.6.25 to 2.1.1. I have some
hesitation of using BerkeleyDB with mailboxes. We currently have around
32000 lines in the mailboxes file.

What kind of problems has there been with BerkeleyDB mailboxes?
What kind of problems has there been with flat file mailboxes?
Are there some caveats to using db mailboxes versus flat file mailboxes?
What is your recommendation?

-- 
  -- Leena Heino ([EMAIL PROTECTED])




Cyrus imap and AIX 5L

2002-11-12 Thread Leena Heino
Anyone has any experience on running Cyrus IMAP on AIX 5L?

-- 
  -- Leena Heino (liinu at uta.fi)




Re: Problems with some MIME messages (cyrus-imapd-2.1.9)

2002-11-29 Thread Leena Heino
On Thu, 21 Nov 2002, Ralf Haferkamp wrote:

> cyrus-imapd fails to correctly seperate the different parts of mail under
> certain circumstances. This e.g. the case if one MIME part of the mail
> contains a multipart/alternative part, that has a boundary which contains
> the boundary of the enclousing MIME part as a substring. I guess I better
> give an example here: ;)
>
Cyrus IMAP version: 2.1.9

I did some testing with different Eudora versions:
- Eudora versions up to and including 5.1 send mail with these erraneous
nested MIME boundaries. (Tested version 4.3.2, 5.0.2 and 5.1)
- Eudora versions 5.1.1 and later seems to fix this MIME boudaries issue.
(Tested version 5.1.1 and 5.2)

This situation can be quite easily tested just by sending mail with
Eudora. The mail has to have two MIME parts, one attachment and the other
is multipart/alternative (eg. text and html versions of the mail).

-- 
  -- Leena Heino (liinu at uta.fi)



Eudora compatibility, patches

2003-06-04 Thread Leena Heino
Here is a couple of patches to make Cyrus imapd 2.1.x versions
compatible with Eudora's features. They seem to work in our enviroment,
but be carefull and use at your own risk.

Patch 1 makes Cyrus imapd's STARTTLS Eudora compatible (and breaks client
side certificates).
Patch 2 to make MIME boundary handling Eudora compatible.


Patch 1:
Some 5.x Eudora versions seems to do STARTTLS with SSLv2 or SSLv3
handshake. To enable STARTTLS with, server must enable SSLv2 and
SSLv3 with STARTTLS.

Eudora version 5.2.x refuse to do STARTTLS if server ask for client side
certificates. To enable STARTTLS with these Eudora versions, do not ask
client sertificates with IMAP+STARTTLS.

Add these to imapd.conf:
# Wheter to request client certificate with STARTTLS session.
#
##tls_request_cert: 1
# Wheter to request client certificate with STARTTLS imap session.
#
tls_imap_request_cert: 0
# Wheter to request client certificate with STARTTLS pop3 session.
#
tls_pop3_request_cert: 0
# Wheter to request client certificate with STARTTLS lmtp session.
#
##tls_lmtp_request_cert: 1
# Wheter to request client certificate with STARTTLS sieve session.
#
##tls_sieve_request_cert: 1

Patch to Cyrus IMAP:
--- imap/tls.c.orig Wed Jul 24 22:30:40 2002
+++ imap/tls.c  Fri Nov 15 11:46:51 2002
@@ -573,6 +573,7 @@
 const char   *s_cert_file;
 const char   *s_key_file;
 intrequirecert;
+intrequestcert;
 inttimeout;

 if (tls_serverengine)
@@ -605,8 +606,11 @@

 off |= SSL_OP_ALL; /* Work around all known bugs */
 if (tlsonly) {
+   /* Eudora 5.x does not support TLSv1 (per RFC2246 & RFC2595).
+* Therefore enable SSLv2 and SSLv3 with STARTTLS.
off |= SSL_OP_NO_SSLv2;
off |= SSL_OP_NO_SSLv3;
+   */
 }
 SSL_CTX_set_options(ctx, off);
 SSL_CTX_set_info_callback(ctx, apps_ssl_info_callback);
@@ -692,8 +696,13 @@
 SSL_CTX_set_tmp_rsa_callback(ctx, tmp_rsa_cb);

 verify_depth = verifydepth;
-if (askcert!=0)
-   verify_flags |= SSL_VERIFY_PEER | SSL_VERIFY_CLIENT_ONCE;
+if (askcert!=0) {
+snprintf(buf, sizeof(buf), "tls_%s_request_cert", ident);
+requestcert = config_getswitch(buf,
+  config_getswitch("tls_request_cert", 1));
+if (requestcert)
+  verify_flags |= SSL_VERIFY_PEER | SSL_VERIFY_CLIENT_ONCE;
+}

 snprintf(buf, sizeof(buf), "tls_%s_require_cert", ident);
 requirecert = config_getswitch(buf,


Patch 2:
Eudora versions pre 5.1 seems to create MIME boundarytags that are
substrings of main MIME boundary tag.

Patch to Cyrus IMAP:
--- imap/message.c.orig Tue Aug 13 19:46:32 2002
+++ imap/message.c  Thu Nov 21 13:11:04 2002
@@ -1699,13 +1699,27 @@
 char **boundaries;
 int *boundaryct;
 {
-int i, len;
-
+int i, len, slen;
+char *end;
+
 if (s[0] != '-' || s[1] != '-') return(0);
 s+=2;

+slen = 0;
+end = strchr(s, '\r');
+if (end) {
+slen = end - s;
+if ((*(end-1) == '-') && (*(end-2) == '-')) {
+slen -= 2;
+}
+}
 for (i=0; i < *boundaryct; ++i) {
len = strlen(boundaries[i]);
+/* s might contain a boundaries[i] as a substring.
+   So use the length of s if it is longer than len */
+if (slen > len) {
+len = slen;
+}
 if (!strncmp(s, boundaries[i], len)) {
 if (s[len] == '-' && s[len+1] == '-') *boundaryct = i;
 return(1);

-- 
  -- Leena Heino (liinu at uta.fi)



Re: Sieve interface for spam filtering scripts?

2003-09-30 Thread Leena Heino
On Tue, 30 Sep 2003, Tuuli K Tuominen wrote:

> Hello,
> Does anyone have a simple sieve web interface for creating a filter
> for spam-tagged messages? We'll be tagging spam messages with a

You might want to look at the Horde projects Ingo. If your users are used
to use Imp as their email client then it's interface is quite intuitive.
The cvs releng version of ingo should and does work with horde 2.x
versions. Though, the releng version of ingo does have some features,
which might make it unsuitable to your enviroment, especially if you are
using a setup that consists of multiple separate imap servers.

-- 
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )


Large deliver.db file

2003-11-04 Thread Leena Heino
Is it normal that tls_sessions.db, deliver.db and db-directories seem to
get quite large. At the moment tls_sessions.db is about 50kB, deliver.db
is about 174MB and db and db.backup directories are about 1.3G each.

System information:
name   : Cyrus IMAPD
version: v2.1.15 2003/08/15 19:34:42
vendor : Project Cyrus
support-url: http://asg.web.cmu.edu/cyrus
os : SunOS
os-version : 5.9
environment: Cyrus SASL 2.1.15
 Sleepycat Software: Berkeley DB 4.1.25: (December 19, 2002)

cyrus.conf:
delprune  cmd="ctl_deliver -E 3"

-- 
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )


Re: Large deliver.db file

2003-11-06 Thread Leena Heino
On Tue, 4 Nov 2003, Igor Brezac wrote:

> Is your deliver.db continually growing?

Yes it is. In just a couple of days it has grown from 180M to 195M

-- 
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )


Re: Large deliver.db file

2003-11-06 Thread Leena Heino
On Thu, 6 Nov 2003, Igor Brezac wrote:

> Your expire process is not running properly.  Please see my previous post:
> http://asg.web.cmu.edu/archive/message.php?mailbox=archive.info-cyrus&msg=25637

Thanks for the information. I'll try it as soon as possible.

Do you know if this db enviroment setup problem is fixed in the upcoming
BerkeleyDB version 4.2?

-- 
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )


Re: tls_ca_path and tls_ca_file

2006-10-12 Thread Leena Heino

Somewhere in bugzilla.mozilla.org is a feature request
from me asking for that feature.
But it was turned down in favor of a planned general overhaul
of the authentication framework
(from which I also never heard again...)


I've locally implemented a config switch tls_request_cert, which turns off 
client certificate request in tls. This was because older Eudora versions 
would hang if tls was used and client certificate was requested.


--
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


unexpunge and subfolders

2006-10-17 Thread Leena Heino
If user has not deleted the whole subfolder only some of the messages then 
is there any way to restore those messages with unexpunge?


It seems that if any subfolders is specified as an argument then then 
unexpuge segfaults eg.: unexpunge -a user.foo.subfolder


(gdb) bt
#0  0xfedb455c in strlen () from /usr/lib/libc.so.1
#1  0xfee07058 in _doprnt () from /usr/lib/libc.so.1
#2  0xfee090c8 in vsnprintf () from /usr/lib/libc.so.1
#3  0xfedd62a4 in vsyslog () from /usr/lib/libc.so.1
#4  0xfedd5de0 in syslog () from /usr/lib/libc.so.1
#5  0x000178e8 in main (argc=4, argv=0xffbffe5c) at unexpunge.c:507

unexpunge.c:507
   505  if (r || expunge_fd == -1) {
   506  /* mailbox corrupt/nonexistent -- skip it */
   507  syslog(LOG_WARNING, "unable to open/lock mailbox %s", 
argv[optind]);

   508  if (doclose) mailbox_close(&mailbox);
   509  return 0;
   510  }

--
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


delayed expunge and subfolders

2006-10-17 Thread Leena Heino

Is delayed expunge supposed to work in subfolders?

I have this in cyrus.conf:
delprune  cmd="cyr_expire -E 3 -X 2" at=0400

I've understood that this is supposed to mean that if delayed expuge is 
used and folder annotations does not specify anything else then messages 
are supposed to be deleted from all folders after two days.


--
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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: delayed expunge and subfolders

2006-10-17 Thread Leena Heino

Is delayed expunge supposed to work in subfolders?

I have this in cyrus.conf:
delprune  cmd="cyr_expire -E 3 -X 2" at=0400

I've understood that this is supposed to mean that if delayed expuge is used 
and folder annotations does not specify anything else then messages are 
supposed to be deleted from all folders after two days.


More information. I tried to run the cyr_expire from shell and it 
segfaulted:

$ cyr_expire -E 3 -X 2 -v
expunging deleted messages in mailboxes older than 2 days
Segmentation Fault

(gdb) bt
#0  process_records (mailbox=0xffbff078, newindex=0xe2dd0,
index_base=0xfeca , exists=21,
deleted=0xe5b88, numdeleted=0xffbfbed4, quotadeleted=0xffbfbee8,
numansweredflag=0xffbfbee4, numdeletedflag=0xffbfbee0,
numflaggedflag=0xffbfbedc, newcache=0xe2dc0,
new_cache_total_size=0xffbfbed8, expunge_fd=-1, last_offset=0,
decideproc=0x16e18 , deciderock=0xffbffd58,
expunge_flags=2) at mailbox.c:1930
#1  0x0001ad08 in mailbox_expunge (mailbox=0xffbff078,
decideproc=0x16e18 , deciderock=0xffbffd58, flags=-4210808)
at mailbox.c:2306
#2  0x000170c8 in expire (name=0xffbff5d8 "user.atmaso",
matchlen=-4197520,
maycreate=1, rock=0xffbffd58) at cyr_expire.c:224
#3  0x0002034c in find_cb (rockp=0xffbffca8,
key=0xfc89b330 , keylen=11,
data=0xfc89b340 , datalen=37)
at mboxlist.c:1973
#4  0x00039d24 in myforeach (db=0xe4ad8, prefix=0xffbff8c8 "*",
prefixlen=0,
goodp=0x1ffbc , cb=0x20268 , rock=0xffbffca8,
tid=0x0) at cyrusdb_skiplist.c:996
#5  0x00020944 in mboxlist_findall (namespace=0x0, pattern=0xffbffd88 "*",
isadmin=1, userid=0x0, auth_state=0xffbff8c8, proc=0, rock=0xffbffca8)
at mboxlist.c:2165
#6  0x000173f8 in main (argc=6, argv=0xffbffe64) at cyr_expire.c:310


mailbox.c:1930
  1927  /* Compute size of this record */
  1928  cacheitembegin = cacheitem = mailbox->cache_base + 
cache_offset;
  1929  for (cache_ent = 0; cache_ent < NUM_CACHE_FIELDS; 
cache_ent++) {

  1930  cacheitem = CACHE_ITEM_NEXT(cacheitem);
  1931  }
  1932  cache_record_size = (cacheitem - cacheitembegin);
  1933  *new_cache_total_size += cache_record_size;
  1934
  1935  /* fwrite will automatically call write() in a sane 
way */


--
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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: delayed expunge and subfolders

2006-10-19 Thread Leena Heino
I've understood that this is supposed to mean that if delayed expuge is 
used and folder annotations does not specify anything else then messages 
are supposed to be deleted from all folders after two days.


More information. I tried to run the cyr_expire from shell and it segfaulted:
$ cyr_expire -E 3 -X 2 -v
expunging deleted messages in mailboxes older than 2 days
Segmentation Fault


But if define expunge delay to zero days then everything works ok and no 
segmentation faults:

$ cyr_expire -E 3 -X 0 -v
expunging deleted messages in mailboxes older than 0 days
expunged ...
$

--
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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: delayed expunge and subfolders

2006-10-20 Thread Leena Heino
In the cyrus.cache file there are always 10 cache fields per message. But 
what could cause this code in mailbox.c to fail in the middle of skipping 
over those fields:

 /* Compute size of this record */
 cacheitembegin = cacheitem = mailbox->cache_base + cache_offset;
 for (cache_ent = 0; cache_ent < NUM_CACHE_FIELDS; cache_ent++) {
 cacheitem = CACHE_ITEM_NEXT(cacheitem);
 }

I see this failure when I try to use cyr_expire with -X 1 or with any 
number greater than zero.

(gdb) frame 0
#0  process_records (mailbox=0xffbff080, newindex=0xe30a8,
index_base=0xfecd , exists=29,
deleted=0x2eb77c0, numdeleted=0xffbfbedc, quotadeleted=0xffbfbef0,
numansweredflag=0xffbfbeec, numdeletedflag=0xffbfbee8,
numflaggedflag=0xffbfbee4, newcache=0xe3098,
new_cache_total_size=0xffbfbee0, expunge_fd=-1, last_offset=0,
decideproc=0x16e18 , deciderock=0xffbffd60,
expunge_flags=2) at mailbox.c:1930
(gdb) p cache_ent
$1 = 8

OS: Solaris 9/Sparc
CC: Gcc 3.4.5
Cyrus: 2.3.7

--
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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: Delayed expunge / undeleting messages

2007-01-18 Thread Leena Heino

But if there is a delay in expunging the message, the file containing
the mesage might just lie around in the mail spool, and could be
identified reasonably easily. Is there a way to add the message back
to the index?


There is a command unexpunge in Cyrus 2.3, that does exactly what you 
describe.


--
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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 on Solaris at universities?

2007-12-13 Thread Leena Heino
On Wed, 12 Dec 2007, Vincent Fox wrote:

> Just wondering what other universities are runing Cyrus on Solaris?
>
> We know of:
> CMU
> UCSB

University of Tampere, Finland. 20k users, 0.9TB data in EMC Clariion.

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Skiplist problems, locking problems with seen files

2009-03-13 Thread Leena Heino
Some of our users have reported that they have been locked out of their 
accounts.

When I examined one such occurence it seemed that one of the imapd 
processes had acquired a write lock to user's seen file and doing 
absolutely nothing to that seen file just holding the writelock. When this 
process was killed user was able to access his mail again.

Now this problem seems to be spreading. Imapd processes just hanging on to 
their writelocks to seen files doing nothing.

What could cause such a problem?

Current version is:
version: v2.3.12p2 2008/04/24 16:09:27
os : SunOS
os-version : 5.10
environment: Built w/Cyrus SASL 2.1.22
  Built w/Sleepycat Software: Berkeley DB 4.4.20: (January 10, 2006)
  lock = fcntl
  nonblock = fcntl

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )


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


Update installation to new features: metadata partition, delayed delete

2009-03-13 Thread Leena Heino
Meta data partition:
If I want to update our cyrus installation to use metadata partition, 
then how is this done.

Do I manually create the similar directory structure to the new metadata 
partition as I have now in the conventional mixed data partition?

Do I manually copy over the cyrus.* metadata files from the conventional 
mixed data partition to metadata partition?

After those are done, then just change the configuration 
settings in the imapd.conf to use the new the meta data partition?

Delayed delete:
If I want to use this feature do I have to do more than just change the 
delete_mode configuration setting to delayed and adjust cyr_expire event 
in the cyrus.conf accordingly?

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )


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: Update installation to new features: metadata partition, delayed delete

2009-03-13 Thread Leena Heino
On Fri, 13 Mar 2009, Dan White wrote:

> With regards to the metadata partition, there is documentation located in the 
> doc/install-upgrade.html file located in the source tarball release.

Thanks Dan. You are absolutely right and the metadata upgrade process was 
mentioned in the doc/install-upgrade.html file. Silly me, for not 
noticing it. I thought I had read the document, but obviously I had missed 
that part. One reason could be that it was mentioned in the "Upgrading 
from 2.2.x or earlier" section, and I had just read the sections about the 
changes in the 2.3.x series.

Though, I still could not find any information about delayed delete.

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )


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: Solaris10/ZFS

2009-03-16 Thread Leena Heino
On Mon, 16 Mar 2009, James M McNutt wrote:

> We are currently running Solaris 9 with VxVM/VxFS
> and looking to move to Solaris 10 with ZFS.
>
> I was looking for some feedback from those using ZFS.
>
> what type of system?
2 accounts, lots of mailboxes

> what type of storage?

EMC Clariion CX3 SAN

> how large?

about 3 TB

> compression?
none

> replication?
none

> problems?

None so far. Or we just haven't noticed them, yet.

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )


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


Delayed delete, restoring deleted mailboxes

2009-03-17 Thread Leena Heino
What is the recommended process to restore deleted messages or mailboxes 
when delayed delete is in use?

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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: Delayed delete, restoring deleted mailboxes

2009-03-17 Thread Leena Heino
On Tue, 17 Mar 2009, Adam Tauno Williams wrote:

> On Tue, 2009-03-17 at 13:26 +0200, Leena Heino wrote:
>> What is the recommended process to restore deleted messages or mailboxes
>> when delayed delete is in use?
>
> Use the unexpunge command;  the man page isn't bad, and I have examples
> and some notes in the Cyrus chapter of WMOGAG
> <http://docs.opengroupware.org/Members/whitemice/wmogag/file_view>.

The unexpunge command was the first thing I tried and I read it's man 
page. But what puzzles me is that it seems that the deleted mailboxes 
are not shown in unexpunge commands output.

The mailbox meta files and mailbox's messages are shown in the spool dir 
under the DELETED prefix eg. in the directory:
/cyrus_spool/u/DELETED/user/foo/sent-mail/HEXSTRING/

What is the correct procedure the restore this mailbox so that user is 
able see the messages and access it once again.

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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: how to configure: turn off SSL_VERIFY_PEER flag for imap/tls

2009-08-04 Thread Leena Heino
On Tue, 4 Aug 2009, Zhang Weiwu wrote:

> Hello.
>
> I am trying to help my users workaround an issue which was described here:
> https://bugzilla.mozilla.org/show_bug.cgi?id=437683
>
> In short, cyrus imapd asked for tls client certificate, while user agent 
> thunderbird prompts user to select one. Since our deployment does not 
> require client certificate, and users have their email PGP certificate 
> installed, whatever PGP certificate user selects must be wrong, thus 
> user couldn't establish connection to imap server.

I've used patch like this to patch Cyrus IMAPD:
Add to your imapd.conf:
# Wheter to request client certificate with STARTTLS session.
#
##tls_request_cert: 1
# Wheter to request client certificate with STARTTLS session.
#
imap_tls_request_cert: 0
pop3_tls_request_cert: 0

Patch:
--- imap/tls.c.orig Fri Oct 28 17:51:18 2005
+++ imap/tls.c  Thu Mar  2 12:45:28 2006
@@ -580,6 +580,7 @@
  const char   *s_cert_file;
  const char   *s_key_file;
  intrequirecert;
+intrequestcert;
  inttimeout;

  if (tls_serverengine)
@@ -684,8 +688,11 @@
  SSL_CTX_set_tmp_rsa_callback(s_ctx, tmp_rsa_cb);

  verify_depth = verifydepth;
-if (askcert!=0)
-   verify_flags |= SSL_VERIFY_PEER | SSL_VERIFY_CLIENT_ONCE;
+if (askcert!=0) {
+   requestcert = config_getswitch(IMAPOPT_TLS_REQUEST_CERT);
+   if (requestcert)
+   verify_flags |= SSL_VERIFY_PEER | SSL_VERIFY_CLIENT_ONCE;
+}

  requirecert = config_getswitch(IMAPOPT_TLS_REQUIRE_CERT);
  if (requirecert)

--- lib/imapoptions Wed Feb  1 21:44:06 2006
+++ lib/imapoptions Thu Mar  2 12:45:28 2006
@@ -956,6 +956,9 @@
  /* File containing the private key belonging to the server
 certificate.  A value of "disabled" will disable SSL/TLS. */

+{ "tls_request_cert", 1, SWITCH }
+/* Request a client certificate for ALL services (imap, pop3, lmtp, sieve). */
+
  { "tls_require_cert", 0, SWITCH }
  /* Require a client certificate for ALL services (imap, pop3, lmtp, sieve). */

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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: Lockers ?

2009-10-07 Thread Leena Heino
On Wed, 7 Oct 2009, Matt Selsky wrote:

> On Oct 7, 2009, at 8:26 AM, Andres Tarallo wrote:
>
>> I have a cyrus-imap server that receives mail from a postfix server
>> via LMTP (network, they are separated physical servers).
>>
>> Every day we receive several messages from mailer daemon that have the
>> following errors: host 192.168.84.184[192.168.84.184] said: 308
>> lockers (in reply to end of DATA command). How can we solve this?
>
> What version of Cyrus are you using?  What database formats?  It
> sounds like you should switch from bdb to skiplist...

This bug was fixed in 2005 with this change to Cyrus IMAPD:
https://bugzilla.andrew.cmu.edu/cgi-bin/cvsweb.cgi/src/cyrus/lib/cyrusdb_berkeley.c.diff?r1=1.9;r2=1.11

Bugzilla entry for this bug is:
https://bugzilla.andrew.cmu.edu/show_bug.cgi?id=2699

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )


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: packages for solaris 10 x86

2010-10-06 Thread Leena Heino
On Wed, 6 Oct 2010, Patrick Goetz wrote:

> On 10/5/2010 7:01 PM, Frank Pittel wrote:
>> In file included from auth_getpwent.c:53:
>> /usr/include/crypt.h:36: error: syntax error before '(' token
>> /usr/include/crypt.h:36: error: syntax error before "const"
>
> Did you check the /usr/include/crypt.h file to see if there is actually
> a syntax error on this line?

You might want to add --without-des to configure command.

Cyrus SASL still includes an ancient version of libtool and with 
Solaris you have to use a newer version in order to build libraries and 
plugins that have correct rpaths. Try using libtool version 1.4.3.

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Re: packages for solaris 10 x86

2010-10-13 Thread Leena Heino
On 14.10.2010 7:08, Pascal Gienger wrote:
> Am 14.10.10 05:37, schrieb Frank Pittel:
>> On Sat, Oct 09, 2010 at 11:33:51AM -0700, Andrew Morgan wrote:
>>> On Sat, 9 Oct 2010, Frank Pittel wrote:
>>>
>>>> That helped but I then I ran into more troubles. I'm starting to wonder if 
>>>> it'll work
>>>> when I do get it compiled! The errors I'm getting now is:
> 
> 
> Comment out the "perl" targets in Makefile. Solaris perl was built with 
> Sun C Compiler, so build and compile options from Sun (Oracle) C were 
> used. You have two possibilities now: Use a gcc compiled perl (from Sun 
> Freeware or doing it on your own) and set thhis perl's path in front of 
> your search path. It will build the Cyrus PERL Modules in your own 
> perl's module path then. Or just comment out the perl targets in your 
> Makefile to skip perl module builds. You will lose "cyradm" though.

Solaris 10 has /usr/perl5/bin/perlgcc, which is perl compiled with gcc.

You can use perlgcc in configure something like this:
./configure --with-perl=perlgcc

-- 
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Re: Cyrus IMAPd 2.4.1 Released

2010-10-18 Thread Leena Heino
This release will not build on Solaris 10. Solaris 10 does not have
strcasestr() and it is used in imap/imap_proxy.c.

This is logged in the bugzilla with id 3276.

On Mon, 18 Oct 2010, Dave McMurtrie wrote:

> I am pleased to announce the release of Cyrus IMAPd 2.4.1.  This is primarily 
> a bugfix release to the 2.4 branch that fixes several bugs that were reported 
> since the 2.4.0 release.
>
> We recommend that anyone using 2.4.0 upgrade to 2.4.1.  Notable changes in 
> the release are as follows:
>
> - Fix cyrdump to work with -C for alternate config
> - Change master to process all pending child messages once per loop, which 
> fixes a DoS situation if there is too much message churn in a slower box - 
> thanks to Henrique de Moraes Holschuh 
> - Reconstruct added flags -R, -U, -o, -O to give options handling corrupt or 
> missing files
> - Reconstruct fixed a pile of bugs, including a nasty one which created 
> mailboxes with a UIDVALIDITY of 0
> - Fixed EXPUNGE in murder
> - Fixed LSUB where subscribed mailboxes are on different murder backends
>
> For full details, please see:
> http://www.cyrusimap.org/docs/cyrus-imapd/2.4.1/changes.php
> http://www.cyrusimap.org/docs/cyrus-imapd/2.4.1/install-upgrade.php
>
> URL for this release:
> ftp://ftp.cyrusimap.org/cyrus-imapd/cyrus-imapd-2.4.1.tar.gz
>
> Special thanks go to Bron Gondwana and Henrique Holschuh for their 
> contributions to this release.
>
> Questions and comments can be directed to info-cyrus@lists.andrew.cmu.edu 
> (public list), or cyrus-b...@andrew.cmu.edu.
>
> Thank you,
>
> Dave
> -- 
> Dave McMurtrie, SPE
> Email Systems Team Leader
> Carnegie Mellon University,
> Computing Services
>
>
>

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Re: Does anyone allow unlimited or extremely large quotas?

2010-11-16 Thread Leena Heino
On 16.11.2010 17:11, Shuvam Misra wrote:
> I guess Webmail is OT on a Cyrus mailing list, but can't help asking: any 
> suggestions for
> improving Webmail performance? (Admission: we haven't yet tried imapproxy
> -- it appears to be a good piece of C which will help things.)

You should install imapproxy. Also make sure you do a lot of caching on
the webmail side for example if the webmail is programmed with php use
apc and cache mailbox listing and message headers if possible.

Cache also things on the imap server, if your cyrus version supports it
you should try to use status cache and test whether it makes any
difference in your environment.

-- 
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Re: Perl version of dir_hash_c

2011-07-27 Thread Leena Heino
On Wed, 27 Jul 2011, subscript...@innter.net wrote:

> Hello,
>
> I have found that C and Perl versions (tools/rehash) of dir_hash_c have
> different results. For part of mailboxes.
>
> Perl code :
>
> $n = 0;
> foreach my $b (split(/ */, $auth_user)) {
>$n = (($n << 3) ^ ($n >> 5)) ^ ord($b);
> }
> $h = chr(ord('A') + ($n % 23));

If your perl uses 64bit int and your cyrus imapd is compiled
with 32bit int then you might want change your perl code to something
like this:

$uint32=(2**32);
$n = 0;
foreach my $b (split(/ */, $_)) {
 $n = ((($n << 3) ^ ($n >> 5)) % $uint32) ^ ord($b);
}
$h = chr(ord('A') + ($n % 23));

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Re: Strange problem with quota - cyrus imap 2.4.10

2011-08-14 Thread Leena Heino
On 14.8.2011 14:45, Lucas Zinato Carraro wrote:
> In old versions when i run quota -f user/mailbox
> the quota for specific mailbox is fixed.
>
> But i try with 2.4.10 and the quota is removed
>
>   I have quota defined for empty  mailboxes.
> Anyone knows how to fix this ?

This bug is fixed in the latest Cyrus imapd 2.4 release 2.4.11beta1.

Bugzilla entry for this is:
http://bugzilla.cyrusimap.org/show_bug.cgi?id=3498

Git entry related to bug 3498 is:
http://git.cyrusimap.org/cyrus-imapd/commit/?h=cyrus-imapd-2.4&id=909f7f3de37075170c2afe6aa208ce7a90774ebe

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Re: Strange problem with quota - cyrus imap 2.4.10

2011-08-15 Thread Leena Heino
On Sun, 14 Aug 2011, Lucas Zinato Carraro wrote:

> On Sun, Aug 14, 2011 at 4:46 PM, Lucas Zinato Carraro 
> wrote:
>
>> If i compile only quota utility from imapd 2.411beta1  and replace from
>> 2.4.10,
>> it will work  ? Exist a change involving quota and binary imapd (proxyd)  ?

Yes you can compile only the quota command and use that instead if 
the default quota command from the 2.4.10.

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Re: lmtp timeout

2011-09-16 Thread Leena Heino
On Fri, 16 Sep 2011, Davy HUBERT wrote:

> Hello,
>
> By using network based connections the server work better but the problem 
> still remains.

It could be that if you are using BerkeleyDB for deliver.db then the 
system is running out of locks or resources. This could cause lmtpd 
processes to end up waiting for these resources and it would mean that 
none of the lmtpd processes are listening for the new connections.

Check the logs for errors, and also you might want to limit the number of 
lmtpd processes.

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Re: moving from linux to openindiana

2011-10-26 Thread Leena Heino
On Wed, 26 Oct 2011, Gabriele Bulfon wrote:

> Hi, may I safely move the cyrus db (/var/imap) and spool 
> (/var/spool/imap) from linux to an openindiana?

You should not encounter any problems with moving skiplist and plain 
text type databases. Also there should not be any problems moving the 
mailbox data (messages, cache, index etc.)

There might be some problems moving the berkeleydb databases. At least 
earlier the only way to move berkeleydb databases is that you dump them in 
the old architechture/os and recreate them from the dump/restore files in 
the new architechture/os.

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Re: Newbe: Help on cyrus-imapd mailbox listing...

2011-12-20 Thread Leena Heino
On Tue, 20 Dec 2011, Klaus Tachtler wrote:

> virtdomains: on
>
> When i stop using virtdomains, solves this the problem?

Turning off the virtdomain support might solve the problem.

But if you want to use virtdomains then change the configuration to:
virtdomains: userid

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Re: Cyrus IMAP 2.4.14 released

2012-03-12 Thread Leena Heino
On 13.3.2012 3:59, Patrick Boutilier wrote:
> I just updated my replication server from 2.4.12 to 2.4.14 and then got
> nothing but "System I/O error" errors in the logs. I took a look at
> http://bugzilla.cyrusimap.org/show_bug.cgi?id=3381 and noticed this:
> 
> You can convert your mail directory hashing scheme from 32bit
> fulldirhash to
> 64bit fulldirhash with following commands:
> % tools/rehash basic
> % tools/rehash full
> 
> 
> Unfortunately I have almost 5TB of mail spread out on 23 different mount
> points. All the letters in /imap/mail are individual mount points so
> rehashing would mean lots of moves across the mount points which won't
> be quick.
> 
> Is there a way to force Cyrus to use the old 32bit way, other than just
> removing the patch?

Unfortunately there does not seem to be way to force either 32bit or
64bit fulldirhash.

You have to remove this patch from 2.4.14:
diff --git a/lib/util.c b/lib/util.c
index 8bcb00e..c96caa5 100644
--- a/lib/util.c
+++ b/lib/util.c
@@ -269,7 +269,7 @@ int dir_hash_c(const char *name, int full)

 if (full) {
unsigned char *pt;
-   unsigned int n;
+   unsigned long long int n;
    enum {
DIR_X = 3,
DIR_Y = 5,

-- 
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Re: Cyrus IMAP 2.4.14 released

2012-03-13 Thread Leena Heino
On Tue, 13 Mar 2012, Bron Gondwana wrote:

> Leena - should we back this out and get 2.4.15 out fast (with a
> changes.html!) and make the fulldirhash always be 32 bit hashing
> by changing the perl that way instead?
>
> Tell you the truth, I'm super-tempted to just change the code to
> look in BOTH locations always if you have fulldirhash.

I think making fulldirhash to use 64bit by default is a right 
thing to do. But if we want a really fast fix then maybe the fulldirhash 
64bit change should be backed out.

In order to make it really work in both pure or mixed 32bit and 64bit 
environments the fulldirhash code in cyrus should look for the data in 
both places. The tools/rehash script does that already.

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Re: Cyrus IMAP 2.4.14 released

2012-03-13 Thread Leena Heino
On Tue, 13 Mar 2012, Bron Gondwana wrote:

> On Tue, Mar 13, 2012 at 10:31:08AM +0200, Leena Heino wrote:
>> I think making fulldirhash to use 64bit by default is a right thing
>> to do. But if we want a really fast fix then maybe the fulldirhash
>> 64bit change should be backed out.
>
> Personally I think throwing fulldirhash out with the trash is the
> right thing to do.  We use directory hashing at FM, though I'm
> tempted to think it's no longer required what with ext3's 32k
> folder limit gone away now.

We have to use fulldirhash because this way we are able to take backups 
more efficiently. The way Networker assings it resources makes it more 
efficient to use multiple directories that each have more or less the same 
amount of data and files.

> I can't see why a 32 bit hash isn't big enough though - it's no
> less random, and it's not expensive to calculate.

It is more about making the system work in a predictable way regardless 
the size of int in various tools and systems. The size of 32bit hash and 
the randomness it gives is most likely more than enough.

>> In order to make it really work in both pure or mixed 32bit and
>> 64bit environments the fulldirhash code in cyrus should look for the
>> data in both places. The tools/rehash script does that already.
>
> I think looking multiple places is the pragmatic fix.

I Agree.

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Re: Bug#3642, Special Use Folders, Config

2012-08-07 Thread Leena Heino
On Tue, 7 Aug 2012, Adam Tauno Williams wrote:

> <https://bugzilla.cyrusimap.org/show_bug.cgi?id=3642>
>
> Regarding special-user folders, how do these folders get flagged as
> such?  Or is this not available [really usable] in 2.4?  The bug applied
> a patch to 2.4.x but the roadmap lists this for 2.5.
>

In Cyrus imapd 2.4 just add lines like these to imapd.conf:
# Special-Use Mailboxes. Use xlist- prefix to the list of special use
# attributes defined in RFC 6154. Attribute name in the configuration
# key should be defined in lowercase. The attribute value is case
# sensitive, may contain whitespace and and must be valid
# UTF7-IMAP string.
#
xlist-archive: Archives
xlist-drafts: Drafts
xlist-sent: Sent
xlist-spam: Spam
xlist-trash: Trash

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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: Lockers messages i

2005-09-24 Thread Leena Heino

I've recently upgraded our Cyrus from 2.1.17 to 2.2.12. At the same
time I separated the cyrus server and postfix onto two separate
machines. Therefore, I changed from local unix lmtp delivery with lmtp
over tcp.

When we deliver a lot of emails I get the following in my postfix logs

Sep 24 07:14:29 mail-srv2 postfix/lmtp[7366]: [ID 197553 mail.info]
987F9A9CA: to=<[EMAIL PROTECTED]>, orig_to=, relay=141.5.10.20[141.5.10.20],
delay=92, status=sent (26 lockers?250 2.1.5 Ok)


This seems like the same error that we encountered when we upgraded our 
BerkeleyDB installation to version 4.3.28.


More details and a proposed patch can be found in this bugzilla entry:
https://bugzilla.andrew.cmu.edu/show_bug.cgi?id=2699

--
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Re: lockers and bouncing messages

2006-02-14 Thread Leena Heino
Feb 13 10:12:13 smtp2 postfix/lmtp[29737]: EDC1B1702DF: 
to=<[EMAIL PROTECTED]>, 
relay=cyrus-be1.onid.oregonstate.edu[128.193.4.141], delay=3, status=bounced 
(host cyrus-be1.onid.oregonstate.edu[128.193.4.141] said: 563 lockers (in 
reply to end of DATA command))


Please see this bugzilla entry:
https://bugzilla.andrew.cmu.edu/show_bug.cgi?id=2757

--
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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


Re: Sendmail and Virtual Domains

2015-07-21 Thread Leena Heino
On Tue, 21 Jul 2015, Andrea Venturoli wrote:

> Hello.
>
> I've been using Cyrus IMAP for years, but I'n now struggling with
> virtual domains for the first time.
> This is a new server, so there are no compatibility issues and I don't
> need a default domain.
> I've got most of it working, but I still have two questions...
>
>
>
> First, how to configure sendmail?
> Forgive me for my limited understanding, but the docs only briefly state:
>> You'll have to use the Cyrus mailer in LMTP mode, and you'll have to change 
>> the mailer flags so that it provides the full domain while communicating via 
>> LMTP. Specifically these changes:
>>
>> S=EnvFromSMTP/HdrFromSMTP, R=EnvToSMTP
>
> I tried with "define(`CYRUSV2_MAILER_FLAGS',`S=EnvFromSMTP/HdrFromSMTP,
> R=EnvToSMTP')", but this does not work.
> Does this mean I need to modify cyrusv2.m4 (which I'd need to redo after
> every upgrade)?
> Right now I copied its content into my sendmail config file and modified
> it, but I don't feel this is a good solution...
> Any other way?

You might want to define new mailer. I have cyrusv2domain.cf, which does 
not strip away domain part of the email address.

1. Generate suitable sendmail.cf from sendmail.mc
I had to add these lines:
# FEATURE(`virtusertable')dnl
# VIRTUSER_DOMAIN_FILE(`MAIL_SETTINGS_DIR`'virtuser-domains')dnl
# FEATURE(`mailertable')dnl
# MAILER(`cyrusv2domain')dnl

2. Define the domain to mailertable.txt:
example.com cyrusv2domain:[localhost]

3. Define example.com as virtual-domain, by adding it to virtuser-domains
example.com

4. Add addresses or aliases to virtual user table.
firstname.lastn...@exmaple.com u...@example.com

Some additional information can also be found at:
http://jmaimon.com/sendmail/anfi.homeunix.net/sendmail/#cyrus

> Second question: access to "Other Users" does not seem to work properly.
> I'm used to give any user access to any other user mailbox through
> cyradm's "sam" command, but in this case it seems this is not enough.
>
> I have:
>> lam user@mydomain.it
>> x...@mydomain.it lrswipkxtecdan
>> myuser lrted
>
> However, logging in as "myuser" does not show x...@mydomain.it:
>> # telnet localhost imap
>> Trying ::1...
>> Trying 127.0.0.1...
>> Connected to localhost.
>> Escape character is '^]'.
>> * OK [CAPABILITY IMAP4rev1 LITERAL+ ID ENABLE STARTTLS AUTH=SCRAM-SHA-1 
>> AUTH=DIGEST-MD5 AUTH=CRAM-MD5 AUTH=NTLM AUTH=LOGIN AUTH=PLAIN SASL-IR] 
>> wilbur.aviozzano-guglielmozamboni.it Cyrus IMAP 2.5.4 server ready
>> . login myuser XXX
>> . OK [CAPABILITY IMAP4rev1 LITERAL+ ID ENABLE ACL RIGHTS=kxten QUOTA 
>> MAILBOX-REFERRALS NAMESPACE UIDPLUS NO_ATOMIC_RENAME UNSELECT CHILDREN 
>> MULTIAPPEND BINARY CATENATE CONDSTORE ESEARCH SORT SORT=MODSEQ SORT=DISPLAY 
>> SORT=UID THREAD=ORDEREDSUBJECT THREAD=REFERENCES ANNOTATEMORE 
>> ANNOTATE-EXPERIMENT-1 METADATA LIST-EXTENDED LIST-STATUS LIST-MYRIGHTS 
>> WITHIN QRESYNC SCAN XLIST XMOVE MOVE SPECIAL-USE CREATE-SPECIAL-USE URLAUTH 
>> URLAUTH=BINARY LOGINDISABLED COMPRESS=DEFLATE X-QUOTA=STORAGE 
>> X-QUOTA=MESSAGE X-QUOTA=X-ANNOTATION-STORAGE X-QUOTA=X-NUM-FOLDERS IDLE] 
>> User logged in 
>> SESSIONID=
>> . LIST "Other Users" *
>> . OK Completed (0.000 secs)
>
> Why? How do I solve?
>
>
>
>  bye & Thanks
>   av.
> 
> 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
>
>

-- 
   Leena Heino  University of Tampere / Computer Centre
   ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )

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 control the header cyrus lmtp adds to an e-mail upon delivery

2017-05-26 Thread Leena Heino

Hi,

The lmtp received line is defined in imap/lmtpengine.c:
p += sprintf(p, " by %s", config_servername);

The lmtp should use the servername setting or gethostname() if servername 
is unset.


On Fri, 26 May 2017, Michael Hieb wrote:

Does anyone know how to control the header cyrus lmtp adds to an e-mail upon 
delivery?


I see following added to headers of e-mail received via cyrus lmtp from 
postfix


Received: from mail.domain1.net (mail.domain1.net [192.168.1.75]) by 
MAILSERVER (Cyrus v2.4.18) with LMTPA; Fri, 26 May 2017 00:26:03 +


I would like to  change "MAILSERVER (Cyrus v2.4.18) with LMTPA" to show FQDN 
"imap.domain1.com (Cyrus v2.4.18) with LMTPA".




Configuration as follows:

Here is my configuration in /etc/cyrus.com

# at least one LMTP is required for delivery
lmtpdomain1   cmd="lmtpd -a" 
listen="mail.domain1.com:lmtp" maxchild=-1 maxforkrate=100


I have servename set in /etc/imapd.conf (and this does appear correctly in 
the banner when a client connects to imap - I realize this is independent 
from lmtp)


   servername: imap.domain1.com

Here is the delivery in /etc/postfix/main.cf

   relay_transport = lmtp:mail.celoso.net:2003




Let me know what other information you require.

Appreciate any clue or advice.


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




--
  Leena Heino  University of Tampere
  ( liinu at uta.fi )  ( http://www.uta.fi/ )

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: Trouble with Outlook 2013, especially with the upgrade from 12/8

2015-12-11 Thread Leena Heino via Info-cyrus

On Fri, 11 Dec 2015, André Schild via Info-cyrus wrote:

Outlook and IMAP is just pain, it's not intended to work, otherwise who would 
buy the exchange server?


1) We see this rather seldom, but sometimes mails come in after 2-10 hours, 
not even a "Fetch mail" helps


2) Definitively a major problem of Outlook 2013, working with IMAP folders in 
copy/rename operations is random at best


We might have had similar problems with Outlook 2013:
- Outlook would sometimes fail to create folders or recognize folders it
  had created earlier
- Messages would get deleted or simply lost when they were copied between
  folders

Attached is a patch that we used locally with Cyrus IMAPD 2.4.17 to 
improve compatibility with Outlook 2013.


--
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )Patch to make Cyrus Imapd compatible with Outlook 2013.
This patch changes XLIST behaviour so that it works the same as in LIST
in a special case. After this patch the output should be:
. LIST "" ""
* LIST (\Noselect) "/" ""
. OK Completed (0.000 secs)
. XLIST "" ""
* XLIST (\Noselect) "/" ""
. OK Completed (0.000 secs)

diff -Naur cyrus-imapd-2.4.17.orig/imap/imapd.c cyrus-imapd-2.4.17/imap/imapd.c
--- cyrus-imapd-2.4.17.orig/imap/imapd.c2012-12-01 21:57:54.0 
+0200
+++ cyrus-imapd-2.4.17/imap/imapd.c 2014-07-24 13:51:26.885893900 +0300
@@ -6029,10 +6029,14 @@
 
 list_callback_calls = 0;
 
-if (!listargs->pat->s[0] && !(listargs->cmd & LIST_CMD_LSUB)) {
+if (!listargs->pat->s[0] && (listargs->cmd == LIST_CMD_LIST)) {
/* special case: query top-level hierarchy separator */
prot_printf(imapd_out, "* LIST (\\Noselect) \"%c\" \"\"\r\n",
imapd_namespace.hier_sep);
+} else if (!listargs->pat->s[0] && (listargs->cmd == LIST_CMD_XLIST)) {
+   /* special case: query top-level hierarchy separator */
+   prot_printf(imapd_out, "* XLIST (\\Noselect) \"%c\" \"\"\r\n",
+   imapd_namespace.hier_sep);
 } else if (((listargs->sel & LIST_SEL_SUBSCRIBED) ||
(listargs->ret & LIST_RET_SUBSCRIBED)) &&
   (backend_inbox || (backend_inbox = 
proxy_findinboxserver(imapd_userid {

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: Sieve vacation script?

2016-01-21 Thread Leena Heino via Info-cyrus

On Sat, 26 Dec 2015, Patrick Goetz via Info-cyrus wrote:

I've been struggling with figuring out how to set up a sieve vacation reply 
script.  The documentation on this is pretty sparse, and the stuff I do find 
doesn't work.  For example,


I have a script that kind of does that. We needed in our organization a 
script that would convert old $HOME/.vacation.msg files to sieve script. 
The script would then install and activate the script on the mail server 
using the mail server admin rights.


The script uses Cyrus::SIEVE::managesieve and blocks of code borrowed from 
sieveshell.


Attached is a perl script that install two files to server: common.script 
and vacation.script. The common.script is just a script that includes 
vacation.script and ingo.script among others.


First question:  is there step by step explanation for manually creating and 
invoking a cyrus sieve script for a particular user?


I think there is no documentation to do it, but all the bits are there in 
sieveshell code.


--
  Leena Heino  University of Tampere / Computer Centre
  ( liinu at uta.fi )  ( http://www.uta.fi/laitokset/tkk )#!/usr/bin/perl

use Cyrus::SIEVE::managesieve;

my $rc = 0;
my $commonrc = 0;
my $horderc = 0;
my $vacationrc = 0;
my $realm = "";
my $server = "";
my $user = "";
my $authz = "";
my $pass = "";

$realm = "";
$server = "imapserver.example.com";
$user = "exampleuser";
$authz = "cyrusadm";
$pass = "adminpassword";

sub prompt {
my($type, $prompt) = @_ ;

if (($type eq "username") && (defined $user)) {
return $user;
} elsif (($type eq "authname") && (defined $authz)) {
return $authz;
} elsif (($type eq "realm") && (defined $realm)) {
return $realm;
}

if (($type eq "password") && (defined $pass)) {
return $pass;
} elsif ($type eq "password") {
my $ostty;
my $str = "";
chomp($ostty = `stty -g`);

system "stty -echo -icanon min 1 time 0 2>/dev/null || " .
   "stty -echo cbreak";
$str = "\n";

print "$prompt: ";

$b = ;
chop($b);

print $str;
system "stty $ostty";

return $b;
}
}

sub list_cb {

my($name, $isactive) = @_ ;

print "$name ";
if ($isactive == 1) {
  print " <- active script\n";
} else {
  print "\n";
}
}

my $obj = sieve_get_handle($server, "prompt", "prompt", "prompt", "prompt");

if (!defined $obj) {
die "unable to connect to server";
}

$rc = sieve_activate($obj, "");
if ($rc != 0) {
my $errstr = sieve_get_error($obj);
$errstr = "unknown error" if(!defined($errstr));
#print "deactivate failed: $errstr\n";
}

$rc = sieve_delete($obj, "common");
if ($rc != 0) {
my $errstr = sieve_get_error($obj);
$errstr = "unknown error" if(!defined($errstr));
#print "delete failed: $errstr\n";
}

$rc = sieve_put_file($obj, 
"/tmp/cyrus_sieve.181426.21062.tmpdir/common.script");
if ($rc != 0) {
my $errstr = sieve_get_error($obj);
$errstr = "unknown error" if(!defined($errstr));
print "upload failed: $errstr\n";
}
$commonrc += $rc;

$rc = sieve_activate($obj, "common");
if ($rc != 0) {
my $errstr = sieve_get_error($obj);
$errstr = "unknown error" if(!defined($errstr));
print "activate failed: $errstr\n";
}
$commonrc += $rc;

$rc = sieve_delete($obj, "vacation");
if ($rc != 0) {
my $errstr = sieve_get_error($obj);
$errstr = "unknown error" if(!defined($errstr));
#print "delete failed: $errstr\n";
}

$rc = sieve_put_file($obj, 
"/tmp/cyrus_sieve.181426.21062.tmpdir/vacation.script");
if ($rc != 0) {
my $errstr = sieve_get_error($obj);
$errstr = "unknown error" if(!defined($errstr));
print "upload failed: $errstr\n";
}
$vacationrc += $rc;

my $listrc = sieve_list($obj, "list_cb");
if ($listrc != 0) {
my $errstr = sieve_get_error($obj);
$errstr = "unknown error" if(!defined($errstr));
print "list failed: $errstr\n";
}

$scriptrc = $commonrc + $horderc + $vacationrc;
exit $scriptrc;

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