On Thu, 2011-06-09 at 17:24 -0400, Matthew Barnes wrote:
> Google Calendars have me stumped, however, since we defer to our
> standard CalDAV backend which authenticates with stored passwords from
> the keyring. I'm not sure how to slip in OAuth integration for this
> one special case.
Hi,
I do not know much background of OAuth, (to be honest, none at all),
thus this is rather a question than answer: CalDAV is using libsoup to
connect to the Google's calendar server and what you are dealing with is
that you do not know how to tell CalDAV to use OAuth and how to pass it
from the UI part to the backend, supposing the libsoup is capable of
this OAuth feature?
If so, then that might be pretty simple with EClient (on actual git
master), just do:
a) in e-client-utils.c::e_credentials_authenticate_helper check for
which account you are asking credentials and set some key in
ECredentials to indicate you are offering OAuth "token"
b) in CalDAV backend, in authenticate_user handler, check for the key
from a) and pass either user/password or OAuth to libsoup, based on
its presence.
Hope that helps,
Milan