Re: [Evolution] Connecting to Carddav Server fails



On Wed, 2012-02-22 at 12:11 +0100, DennisMail gmx net wrote:
Listing all users on a system, as listing the content of "users" would
do, reveals confidential information and thus is probably disabled. Try
"users/<your username>".
I should have thought about this. This was the case. I had to get
through one more subdir, so to connect Evolutions addressbook to a Mac
server (ssl enabled), you should use the following URL:
https://server:8843/addressbooks/users/<username>/addressbook
This perfectly works - so thanks for your reply.
There is a process for discovering the current user's address book(s),
based on well-known URLs that redirect to the right place. If the server
supports DNS SRV lookup, then you don't even need the base URL, just an
email address is enough. This is what the other clients are using. If
you are interested in the technical details, have a look at
WebDAVSource::findCollections() in WebDAVSource.cpp of the SyncEvolution
source code [1].
Wait, let me put this in other words: There are clients that just try
to get through such URL that end with ".../users",
".../users/addressbook" or something like this, so they just get
through all possibilities - is that correct? 

No, it is horrible.

If yes: Is there any particular reason why Evolution does not do this?

There are correct ways to do discovery.  It isn't even that hard.  At
the DAV root a server can publish available collections; such as
calendars can be advertised by making a DAV:calendar-home-set available.
CardDAV uses the DAV:addressbook-home-set property.  Clients should use
those.  The collections pointed to by these properties [values are URLs]
can be enumerated to list the available calendars / addressbooks.

-- 
System & Network Administrator [ LPI & NCLA ]
<http://www.whitemiceconsulting.com>
OpenGroupware Developer <http://www.opengroupware.us>
Adam Tauno Williams




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]