[Evolution] Bug#673180: evolution: caldav-based calendars are not working properly

Kai Juse kai.juse at t-online.de
Sun Jun 3 09:59:26 UTC 2012


Package: evolution
Version: 3.2.2-1+b1
Followup-For: Bug #673180

Dear Maintainer,

I get the same problem when trying to use evolution 3.2.2-1+b1 with davical 1.0.2-1, though
it does not appear to be a universal problem with caldav, but only when the ETag is quoted
(which it is with davical).

http://sourceforge.net/mailarchive/forum.php?thread_name=1327947491.31941.3.camel%40localhost&forum_name=freeassociation-devel

My attempt to downgrade to a working version of evolution / libical0 was repelled by
strong dependency opposition. The following quick-fix workaround to davical made
my setup workable again for me. I broadened the equivalency of acceptable ETags to what
libical/evolution offers. This might be of interessed to some readers of this report.
Use at your own risk.

--- davical.orig_1.0.2-1/inc/CalDAVRequest.php	2012-01-12 06:43:16.000000000 +0100
+++ davical/inc/CalDAVRequest.php	2012-06-01 18:24:46.455715556 +0200
@@ -551,10 +551,16 @@
     */
     if ( isset($_SERVER["HTTP_IF_NONE_MATCH"]) ) {
       $this->etag_none_match = $_SERVER["HTTP_IF_NONE_MATCH"];
+/* ksj: also accept wrongly escaped quotes in ETag from libical 0.48 by clearing escapes (workaround)*/
+/* ETag: "20e0a9c6ccde0230d35a825c0f355181" comes in (wrongly) as ETag: \"20e0a9c6ccde0230d35a825c0f355181\"
+   (shown here w/o any extra quoting/escaping) */
+      if ( substr($this->etag_none_match, 0, 2) == '\\"' ) $this->etag_none_match = substr($this->etag_none_match, 1, -2).'"';
       if ( $this->etag_none_match == '' ) unset($this->etag_none_match);
     }
     if ( isset($_SERVER["HTTP_IF_MATCH"]) ) {
       $this->etag_if_match = $_SERVER["HTTP_IF_MATCH"];
+/* ksj: also accept wrongly escaped quotes in ETag from libical 0.48 by clearing escapes (workaround)*/
+      if ( substr($this->etag_if_match, 0, 2) == '\\"' ) $this->etag_if_match = substr($this->etag_if_match, 1, -2).'"';
       if ( $this->etag_if_match == '' ) unset($this->etag_if_match);
     }
   }


-- System Information:
Debian Release: wheezy/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.38 (SMP w/3 CPU cores; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages evolution depends on:
ii  dbus                     1.5.12-1
ii  debconf [debconf-2.0]    1.5.43
ii  evolution-common         3.2.2-1
ii  evolution-data-server    3.2.2-3
ii  gconf-service            3.2.5-1
ii  gconf2                   3.2.5-1
ii  gnome-icon-theme         3.4.0-2
ii  libatk1.0-0              2.4.0-2
ii  libc6                    2.13-32
ii  libcairo-gobject2        1.12.2-1
ii  libcairo2                1.12.2-1
ii  libcamel-1.2-29          3.2.2-3
ii  libcanberra-gtk3-0       0.28-4
ii  libcanberra0             0.28-4
ii  libclutter-1.0-0         1.10.4-3
ii  libclutter-gtk-1.0-0     1.2.0-2
ii  libcogl-pango0           1.10.2-3
ii  libcogl9                 1.10.2-3
ii  libebackend-1.2-1        3.2.2-3
ii  libebook-1.2-12          3.2.2-3
ii  libecal-1.2-10           3.2.2-3
ii  libedataserver-1.2-15    3.2.2-3
ii  libedataserverui-3.0-1   3.2.2-3
ii  libenchant1c2a           1.6.0-7
ii  libevolution             3.2.2-1+b1
ii  libgail-3-0              3.4.2-1
ii  libgconf-2-4             3.2.5-1
ii  libgdata13               0.12.0-1
ii  libgdk-pixbuf2.0-0       2.26.1-1
ii  libglib2.0-0             2.32.3-1
ii  libgnome-desktop-3-2     3.4.2-1
ii  libgtk-3-0               3.4.2-1
ii  libgtkhtml-4.0-0         4.2.2-1
ii  libgtkhtml-editor-4.0-0  4.2.2-1
ii  libgweather-3-0          3.4.1-1
ii  libical0                 0.48-2
ii  libjson-glib-1.0-0       0.14.2-1
ii  libmx-1.0-2              1.4.6-1
ii  libnotify4               0.7.5-1
ii  libnspr4-0d              2:4.9-3
ii  libnss3-1d               2:3.13.4-3
ii  libpango1.0-0            1.30.0-1
ii  libsoup-gnome2.4-1       2.38.1-2
ii  libsoup2.4-1             2.38.1-2
ii  libsqlite3-0             3.7.11-3
ii  libx11-6                 2:1.4.99.901-2
ii  libxcomposite1           1:0.4.3-2
ii  libxdamage1              1:1.1.3-2
ii  libxext6                 2:1.3.1-2
ii  libxfixes3               1:5.0-4
ii  libxi6                   2:1.6.1-1
ii  libxml2                  2.7.8.dfsg-9.1
ii  psmisc                   22.16-1

Versions of packages evolution recommends:
ii  bogofilter | spamassassin  <none>
ii  evolution-plugins          3.2.2-1+b1
ii  evolution-webcal           2.32.0-2
ii  yelp                       3.4.2-1

Versions of packages evolution suggests:
pn  evolution-dbg                   <none>
pn  evolution-exchange              <none>
pn  evolution-plugins-experimental  3.2.2-1+b1
pn  gnupg                           1.4.12-4
pn  network-manager                 <none>

-- debconf information:
  evolution/kill_processes:
  evolution/needs_shutdown:





More information about the Pkg-evolution-maintainers mailing list