[Evolution] Bug#548784: evolution: imports/exports ical VEVENTs with more than one DESCRIPTION property

Tino Keitel tino.keitel+debbugs at tikei.de
Mon Sep 28 18:58:15 UTC 2009


Package: evolution
Version: 2.28.0-2
Severity: normal

Feel free to reassign this bug to the proper package.

I imported an .ics file into Evolution, and then tried to sync the events
with opensync 0.39. Opensync complained about an illegal DESCRIPTION field.

I examined the .ics file and saw that it contained a VEVENT component with 2
DESCRIPTION properties. However, chapter 4.8.1.5 of RFC 2445 states:

---------------------------------------------------------------------------
The property can be specified in the "VEVENT", "VTODO", "VJOURNAL" or
"VALARM" calendar components.  The property can be specified multiple times
only within a "VJOURNAL" calendar component.
---------------------------------------------------------------------------

I removed the second DESCRIPTION field and opensync worked fine.

Obviously, Evolution imported the invalid .ics data and stored in into its
database.  Opensync requests the data in iCalendar format and gets the
invalid data.  As opensync needs to transfer the data to the other end, and
not only receives it, it does thorough validation of the data, and fails.

Evolution should follow the "be conservative in what you send, liberal in
what you accept" rule and drop all but the first DESCRIPTION field according
to the RFC.  It could also just refuse to import such invalid .ics data. 
Otherwise, the user stores invalid data without noticing it and gets
problems with other software which behaves correctly according to the RFC.

Regards,
Tino

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

Kernel: Linux 2.6.31 (SMP w/2 CPU cores)
Locale: LANG=C, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages evolution depends on:
ii  dbus                   1.2.16-2          simple interprocess messaging syst
ii  debconf [debconf-2.0]  1.5.27            Debian configuration management sy
ii  evolution-common       2.28.0-2          architecture independent files for
ii  evolution-data-server  2.28.0-2+b1       evolution database backend server
ii  gconf2                 2.26.2-3          GNOME configuration database syste
ii  gnome-icon-theme       2.26.0-1          GNOME Desktop icon theme
ii  libart-2.0-2           2.3.20-2          Library of functions for 2D graphi
ii  libatk1.0-0            1.28.0-1          The ATK accessibility toolkit
ii  libbluetooth3          4.42-2            Library to use the BlueZ Linux Blu
ii  libbonobo2-0           2.24.2-1          Bonobo CORBA interfaces library
ii  libbonoboui2-0         2.24.2-1          The Bonobo UI library
ii  libc6                  2.9-26            GNU C Library: Shared libraries
ii  libcairo2              1.8.8-2           The Cairo 2D vector graphics libra
ii  libcamel1.2-14         2.28.0-2+b1       The Evolution MIME message handlin
ii  libdbus-1-3            1.2.16-2          simple interprocess messaging syst
ii  libdbus-glib-1-2       0.82-1            simple interprocess messaging syst
ii  libebackend1.2-0       2.28.0-2+b1       Utility library for evolution data
ii  libebook1.2-9          2.28.0-2+b1       Client library for evolution addre
ii  libecal1.2-7           2.28.0-2+b1       Client library for evolution calen
ii  libedataserver1.2-11   2.28.0-2+b1       Utility library for evolution data
ii  libedataserverui1.2-8  2.28.0-2+b1       GUI utility library for evolution 
ii  libegroupwise1.2-13    2.28.0-2+b1       Client library for accessing group
ii  libenchant1c2a         1.4.2-3.3         a wrapper library for various spel
ii  libexchange-storage1.2 2.28.0-2+b1       Client library for accessing Excha
ii  libfontconfig1         2.6.0-4           generic font configuration library
ii  libfreetype6           2.3.9-5           FreeType 2 font engine, shared lib
ii  libgconf2-4            2.26.2-3          GNOME configuration database syste
ii  libgdata-google1.2-1   2.28.0-2+b1       Client library for accessing Googl
ii  libgdata1.2-1          2.28.0-2+b1       Client library for accessing Googl
ii  libglade2-0            1:2.6.4-1         library to load .glade files at ru
ii  libglib2.0-0           2.22.0-1          The GLib library of C routines
ii  libgnome-desktop-2-11  2.28.0-1          Utility library for loading .deskt
ii  libgnome-pilot2        2.0.15-2.4        Support libraries for gnome-pilot
ii  libgnome2-0            2.26.0-1          The GNOME library - runtime files
ii  libgnomecanvas2-0      2.26.0-1          A powerful object-oriented display
ii  libgnomeui-0           2.24.2-1          The GNOME libraries (User Interfac
ii  libgnomevfs2-0         1:2.24.1-4        GNOME Virtual File System (runtime
ii  libgtk2.0-0            2.18.0-1          The GTK+ graphical user interface 
ii  libgtkhtml-editor0     3.28.0-3          HTML rendering/editing library - e
ii  libgtkhtml3.14-19      3.28.0-3          HTML rendering/editing library - r
ii  libgweather1           2.28.0-1          GWeather shared library
ii  libhal1                0.5.13-3          Hardware Abstraction Layer - share
ii  libical0               0.43-3            iCalendar library implementation i
ii  libice6                2:1.0.5-1         X11 Inter-Client Exchange library
ii  libldap-2.4-2          2.4.17-2          OpenLDAP libraries
ii  libnotify1 [libnotify1 0.4.5-1           sends desktop notifications to a n
ii  libnspr4-0d            4.8-1             NetScape Portable Runtime Library
ii  libnss3-1d             3.12.3.1-1        Network Security Service libraries
ii  liborbit2              1:2.14.17-0.1     libraries for ORBit2 - a CORBA ORB
ii  libpango1.0-0          1.26.0-1          Layout and rendering of internatio
ii  libpisock9             0.12.4-6          library for communicating with a P
ii  libpisync1             0.12.4-6          synchronization library for PalmOS
ii  libpopt0               1.14-4            lib for parsing cmdline parameters
ii  libsm6                 2:1.1.1-1         X11 Session Management library
ii  libsoup2.4-1           2.28.0-1          an HTTP library implementation in 
ii  libsqlite3-0           3.6.18-1          SQLite 3 shared library
ii  libstartup-notificatio 0.10-1            library for program launch feedbac
ii  libusb-0.1-4           2:0.1.12-13       userspace USB programming library
ii  libx11-6               2:1.2.2-1         X11 client-side library
ii  libxml2                2.7.5.dfsg-1      GNOME XML library
ii  zlib1g                 1:1.2.3.3.dfsg-15 compression library - runtime

Versions of packages evolution recommends:
pn  bogofilter | spamassassin     <none>     (no description available)
pn  evolution-plugins             <none>     (no description available)
pn  evolution-webcal              <none>     (no description available)
pn  gnome-desktop-data            <none>     (no description available)
pn  gnome-pilot-conduits          <none>     (no description available)
pn  yelp                          <none>     (no description available)

Versions of packages evolution suggests:
pn  bug-buddy                     <none>     (no description available)
pn  evolution-dbg                 <none>     (no description available)
pn  evolution-exchange            <none>     (no description available)
pn  evolution-plugins-experimenta <none>     (no description available)
ii  gnupg                         1.4.10-2   GNU privacy guard - a free PGP rep
pn  network-manager               <none>     (no description available)

-- debconf information:
  evolution/needs_shutdown:





More information about the Pkg-evolution-maintainers mailing list