Evolution crashes on malformed vcard

Bug #199408 reported by Aki Niemi
22
Affects Status Importance Assigned to Milestone
Evolution
Fix Released
Critical
evolution (Ubuntu)
Fix Released
Low
Ubuntu Desktop Bugs

Bug Description

Binary package hint: evolution

When receiving an email with a malformed vcard attachment, Evolution crashes with this output:

inside eab_vcard_control_new

(evolution:2679): GLib-CRITICAL **: g_ascii_strcasecmp: assertion `s1 != NULL' failed

(evolution:2679): GLib-CRITICAL **: g_ascii_strcasecmp: assertion `s1 != NULL' failed
Segmentation fault (core dumped)

Attached the vcard (info sanitized), that reproduces the crash.

The problem with the vcard is that it has no \r\n after the attributes.

Revision history for this message
Aki Niemi (aki-niemet) wrote :
Revision history for this message
Aki Niemi (aki-niemet) wrote :

Forgot to add:

I'm running 7.10, with:

evolution 2.12.1-0ubuntu1
evolution-data-server 1.12.1-0ubuntu2

Revision history for this message
Ilya Barygin (randomaction) wrote :

I was able to reproduce this crash using the Aki's bad-vcard.vcf in Evoluton 2.12.1-0ubuntu1.1.

Revision history for this message
Ilya Barygin (randomaction) wrote :
Changed in evolution:
status: New → Confirmed
Revision history for this message
C de-Avillez (hggdh2) wrote :

@all: thank you for reporting this bug and working on it, and helping making Ubuntu better. We do appreciate.

I cannot reproduce it on Hardy's Evo -- 2.21.92. The vcard as provided by Aki is shown as, huh, empty. Looking at the provided vcard, I can see it terminated by a line-feed, so I hex-edited the file, and removed it. Tried again, no crash.

Will look upstream, but odds are this has been resolved on unstable (Hardy).

@Ilya -- it is better to open a new bug via apport (and then refer to this bug) than to attach the full crash report here -- it is much more difficult to look at the crash as it is now: (1) I run on an AMD64, and the crash is on a i386; (2) the crash report does not contain a stacktrace. In other words, unfortunately your crash report is unusable for me.

@Aki: please let apport run for any crashes, and use it to open a bug, so that we get all basic data on one sweep.

Revision history for this message
C de-Avillez (hggdh2) wrote :

I cannot find a similar issue upstream. Aki, which client generated such a vcard?

This vcard is *extremely* malformed...

Revision history for this message
Ilya Barygin (randomaction) wrote :

Just for clarity, steps to reproduce this bug are:

1. Send yourself an e-mail with malformed vcard (see above) attached.
2. Try to view this e-mail.

@hggdh: I've used Apport to upload a crash report as bug 200122.

Revision history for this message
C de-Avillez (hggdh2) wrote :

Thank you, Ilya. For the record, I tried both sending an email with this vcard, and importing the vcard on Evolution (File/Import -- single file). Both worked.

I will look now at the uploaded apport crash.

Revision history for this message
C de-Avillez (hggdh2) wrote :

Ilya -- did you set this bug as a security bug? If you did so, I cannot see it until the security team analyses it, and decides to unset the "security" tag...

Revision history for this message
Christopher Yeleighton (giecrilj) wrote :
Revision history for this message
C de-Avillez (hggdh2) wrote :

Accepting, Ilya's back trace is complete. Opened upstream http://bugzilla.gnome.org/show_bug.cgi?id=528039, and linked here.

Changed in evolution:
assignee: nobody → desktop-bugs
importance: Undecided → Low
status: Confirmed → Triaged
Changed in evolution:
status: Unknown → New
Changed in evolution:
status: New → Invalid
Revision history for this message
Sebastien Bacher (seb128) wrote :

the issue should be fixed in hardy, closing the bug, feel free to reopen if you still get the bug using the new versions though

Changed in evolution:
status: Triaged → Fix Released
Changed in evolution:
status: Invalid → Fix Released
Changed in evolution:
importance: Unknown → Critical
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.