Ticket #457 (closed Defect: Software changed)
regression: Reply does not work because of urn:uuid usernames anymore
| Reported by: | mail@… | Owned by: | sagen@… |
|---|---|---|---|
| Priority: | 5: Not set | Milestone: | |
| Component: | Calendar Server | Severity: | Crash/data loss |
| Keywords: | Cc: | kurt.leubner@… | |
| Port: |
Description
Hi,
I missed several response mails to meeting invitations. Looking into this I found that this is because the organizer now is stored as urn:uuid.
2011-07-03 00:44:56+0200 [-] [mailgateway] 2011-07-03 00:44:56+0200 [IMAP4DownloadProtocol,client] [twistedcaldav.mail.MailHandler#error] Mail gateway didn't find an icalendar attachment in message <4E0F9F53.3000205@derklecks.de> 2011-07-03 00:44:56+0200 [-] [mailgateway] 2011-07-03 00:44:56+0200 [IMAP4DownloadProtocol,client] [twistedcaldav.mail.MailHandler#error] looking at organizer urn:uuid:272c501f-366c-517d-8af3-44c37777ef83 2011-07-03 00:44:56+0200 [-] [mailgateway] 2011-07-03 00:44:56+0200 [IMAP4DownloadProtocol,client] [twistedcaldav.mail.MailHandler#error] Don't have an email address for the organizer; ignoring reply.
this is caused by the following code in mail.py
result = self.db.lookupByToken(token)
if result is None:
# This isn't a token we recognize
self.log_error("Mail gateway found a token (%s) but didn't recognize it in message %s" % (token, msg['Message-ID']))
return
organizer, attendee, icaluid = result
organizer = str(organizer)
attendee = str(attendee)
icaluid = str(icaluid)
for part in msg.walk():
if part.get_content_type() == "text/calendar":
calBody = part.get_payload(decode=True)
break
else:
# No icalendar attachment
self.log_error("Mail gateway didn't find an icalendar attachment in message %s" % (msg['Message-ID'],))
self.log_error("looking at organizer %s" % (organizer,))
if not organizer.startswith("mailto:"):
which checks if the organizer starts with urn:uuid ....
The reply emails are lost and therefore data loss occurs.
Change History
Note: See
TracTickets for help on using
tickets.


Right, the tokens DB has the organizer's CUA in urn: form and not mailto: any longer. mail.py needs to look up the mailto: form so the reply can be forwarded. This only happens in the case where the attendee's calendar client didn't include an actual IMIP text/calendar attachment though.