-
Notifications
You must be signed in to change notification settings - Fork 337
Contacts: Colon (":") is incorrectly escaped with Apple CardDAV clients #285
Comments
Your assumption is correct (I think) -> http://tools.ietf.org/html/rfc2426#page-37: Colons do not need to be escaped. |
Sorry for the late reply, I hadn't noticed this issue.
I'm afraid not. By doing such hacks we risk to break more than we fix. |
Well, so far, this "colon problem" described here seems to be the only problem in syncing the CardDAV Clients of iOS 4 and Mac OS X 10.6 Snow Leopard with current ownCloud versions - at least the only one I could find, apart from the necessity to create correct Apache2 redirects for the addresses expected by Apple's CardDAV clients, of course (the ones referenced in ownCloud's forum were for version 3 and are out of date now). It is quite understandable that a group of voluntary developers like ownCloud's aims to focus its efforts on the latest and greatest in smartphone hardware, but nonetheless, it's still kind of sad to see entire generations of still useful Apple devices, more precisely any IntelMac with a CoreDuo chip and any iPhone 3G shipped until June 2010 be incompatible with ownCloud due to such a relatively minor bug in its CardDAV implementation. :-( But as said before, no offence intended, I know you're doing this on a purely honourable basis with limited resources and I really appreciate your work. :-) |
We are currently updating and restructuring our documentation. Could you please file a report with the correct settings at https://github.com/owncloud/documentation/issues With regard to the colon escaping: It's not that I won't bend the RFC to allow for non-standards compliant clients to work properly, but I won't break it with the risk of creating errors for other clients. Even if I were to make an attempt, what should I do with a contact with a note containing for example a regular expression? In this case it's not a matter of man-power or time I'm afraid. |
I have created documentation issue #12 as requested. I hope that somehow corresponds to what you had in mind. :-) With regard to the rest, thank you for bringing more perspective into the issue. I was under the assumption the two Apple CardDAV clients were not the only ones to need such workarounds. But if pretty much any modern CardDAV client complies better to RFC2426 than Apple's buggy implementation in iOS4 and Snow Leopard (an OS still officially sold by the way!), then I have to completely agree with your diagnosis. |
It is excellent! Thank you very much :-) |
When creating a contact over CardDAV with certain Apple CardDAV clients, e.g. the iOS 4.2.1 Address Book or Snow Leopard's Address Book, the colon-character (":") is always incorrectly escaped: A backslash ("") is added in front of every colon.
Example
Create a test contact on an iPhone 3G with iOS 4.2.1, the most recent iOS version available for that phone ...
http://twitter.com/HackintoshHD/status/273891854301401088/photo/1
... and see what it looks like when retrieved back from ownCloud:
http://twitter.com/HackintoshHD/status/273892502325559297/photo/1
ownCloud version: 4.5.2, 4.5.3 (at least)
Affected CardDAV clients: iOS Address Book (iOS 4.2.1), Mac OS X Address Book (Mac OS X 10.6.8 Snow Leopard)
Note: I know this is probably Apple's fault; but however, as they won't fix it: Wouldn't it be possible to provide a workaround with ownCloud, e.g. determine the UserAgent and adapt ownCloud's feedback correspondingly?
The text was updated successfully, but these errors were encountered: