On Do, 2011-06-16 at 12:50 +0100, Jussi Kukkonen wrote:
> >> Now, in the D-Bus interface such an extension of the API is a different
> >> matter. The hashes in GetConfig/SetConfig extend much more naturally to
> >> the additional entries than the command line parameters.
> > 
> > Damn, I actually missed this one on the first read -- I had read/written
> > the configs separately and Gabriel no doubt did the same on my que
> > (sorry about that Gabriel). All the better, I'd really  rather get rid
> > of those extra calls: using source configs "embedded" in the config hash
> > does sound better.
> 
> ...and Patrick just pointed out to me that I'm replying to a already
> scrapped idea. Thunderbird search features are nice but apparently don't
> always present the emails in a logical order :/
> 
> So to clear things up:
> 
> D-Bus configs do _not_ get a special treatment and UIs do need to handle
> source-configs if they want to be able to support editing webdav
> settings (syncing itself works just by using the local config).

Correct. I gave the rationale somewhere in the monologue with myself ;-)

Basically the arguments were:
      * A proper UI needs to understand about CalDAV anyway (for
        example, offer folder selection on the remote side).
      * The approach of mapping a simplified model in the D-Bus API to
        the more complex, real one in the config files would have been
        an error-prone hack.

Now that we have the semantic of different peer types, configuring
ActiveSync (which again requires a proper understanding of the config by
the UI) fits nicely into the concept. So I think we took the right
approach.

[shared credentials]
> >> Here are some use cases for this:
> >>       * The "google" and "google-calendar" configs  will have
> >>         "credentials = keyring://server=google" set. In the case of
> >>         "google-calendar", both the sync and source configs have that.
> >>         That way all three configs use the same username/password
> >>         automatically. It forces command line users who do not want to
> >>         or can't use a keyring to configure with empty "credentials";
> >>         they can't share credentials.
> >>       * After configuring via the D-Bus interface, the command line will
> >>         automatically enable the right access method for the
> >>         credentials. It is no longer necessary to explicitly say
> >>         "syncevolution --keyring".
> >>       * A future extension would use either a different method or
> >>         additional parameters in the URI to define some other
> >>         authorization method. The current implementation must throw an
> >>         error when running into something it doesn't know.
> >>
> >> Nothing needs to be done in the UI or the command line to support this.
> >> The only changes will be in the current code which talks to the
> >> keyring(s).
> > 
> > I mentioned that the source-config password lookup doesn't actually use
> > the keyring at the moment -- if saving credentials in the local config
> > works as well, then this is currently an academic problem that doesn't
> > affect UIs.
> 
> ... and this is actually a problem now, as I understand it. When UIs
> save the password in source-config, it gets pushed into keyring, but the
> lookup doesn't actually work.

This is fixed.

Do you agree with the proposed "credentials = URI" approach?

-- 
Best Regards

Patrick Ohly
Senior Software Engineer

Intel GmbH
Open Source Technology Center               
Pützstr. 5                              Phone: +49-228-2493652
53129 Bonn
Germany

_______________________________________________
SyncEvolution mailing list
[email protected]
http://lists.syncevolution.org/listinfo/syncevolution

Reply via email to