CalDav in 2.4.17-beta and 2.5.0 plus building 2.5.0 issues

Paul Dekkers paul.dekkers at surfnet.nl
Wed Mar 18 14:35:57 EDT 2015


Hi,

I'm looking at upgrading one of my installations (both OS and Cyrus),
and adding CalDav support at the same time seems like a brilliant idea.

I noticed that 2.4.17's beta uses a slightly different SQLite table
layout compared to 2.5's (eg. no comp_flags: that's what breaks it,
recurring and transp were removed so nothing's complaining there).

There's no official upgrade process from the beta, right? Couldn't find
it in the upgrade notes. That's fine by me, I guess that influences my
choice by going for 2.5 right away ;-) as I expect that will have smooth
upgrades in the future. But maybe I overlooked it.

I was looking at 2.4.17 because that's packaged by Ubuntu and Debian and
I prefer that (and FreeBSD's binary packages would be an option, though
there is already a port for 2.5.0). Ubuntu 14.04 ships beta9, Debian 8
beta10.

As for 2.4.17-caldav-beta experiences:

I noticed while importing an existing .ics from Davical that beta10
breaks (also when backported to Ubuntu 14.04): segfault in the httpd
process, while beta9 seems to be OK. Though beta9 gave also a warning on
another .ics import from iCal for one appointment, but continued.

Also, after actually upgrading that test to 2.5 I noticed that the names
I gave to calendars were reset to their UUIDs. If upgrading from 2.4's
beta isn't really supported, that's not an issue of course.

And for getting 2.5.0 to work:

I guess using 2.5.0 comes down to building from source on Linux or
FreeBSD (as port) as my options :-)

While compiling it on Debian/Ubuntu, I noticed that configure complained
about not having libxml2 and jansson while they were available. What was
missing (on the Debian/Ubuntu machines) was pkg-config. Maybe that's
also helpful for someone. I also noticed the missing libglib2.0-dev that
Wolfgang reported earlier this month, apparently that's not just CentOS.

For FreeBSD I noticed that the pam-service is capitalized, while FreeBSD
only accepts it lowercase:

saslauthd[96159]: in openpam_configure(): invalid service name
saslauthd[96159]: do_auth         : auth failure: [user=paul]
[service=HTTP] [realm=] [mech=pam] [reason=PAM start error]

So I had to change the 2 instances of sasl_server_new in httpd.c, I
attached the patch that I had to do.

Regards,
Paul
-------------- next part --------------
--- t/cyrus-imapd-2.5.0/imap/httpd.c	2015-03-03 13:09:17.000000000 +0100
+++ cyrus-imapd-2.5.0/imap/httpd.c	2015-03-18 19:24:12.000000000 +0100
@@ -560,7 +560,7 @@
     }

     /* other params should be filled in */
-    if (sasl_server_new("HTTP", config_servername, NULL, NULL, NULL, NULL,
+    if (sasl_server_new("http", config_servername, NULL, NULL, NULL, NULL,
 			SASL_USAGE_FLAGS, &httpd_saslconn) != SASL_OK)
 	fatal("SASL failed initializing: sasl_server_new()",EC_TEMPFAIL);

@@ -846,7 +846,7 @@

     sasl_dispose(conn);
     /* do initialization typical of service_main */
-    ret = sasl_server_new("HTTP", config_servername, NULL, NULL, NULL, NULL,
+    ret = sasl_server_new("http", config_servername, NULL, NULL, NULL, NULL,
 			  SASL_USAGE_FLAGS, conn);
     if(ret != SASL_OK) return ret;


More information about the Info-cyrus mailing list