Cyrus and performance
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?
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
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
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
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
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
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)
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
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?
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
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
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
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
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
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
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
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
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
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
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?
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
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
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
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
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
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
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
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 ?
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
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
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
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?
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
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
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
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
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
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...
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
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
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
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
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
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
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
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
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
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?
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