Checkout
Philip Martin
committed
on 07 Jun 17
Use libsecret to implement the GNOME Keyring provider by default
instead of libgnome-keyring. The GNOME project have deprecated
libgnome-ke… Show more
Use libsecret to implement the GNOME Keyring provider by default

instead of libgnome-keyring.  The GNOME project have deprecated

libgnome-keyring and libsecret is the preferred replacement.  The old

implementation using libgnome-keyring can still be chosen at configure

time.  Both implementations read and write passwords that can be used

by the other implementation.

The configure option '--with-gnome-keyring' now controls the new

implementation while the option '--with-old-gnome-keyring' controls

the previous implementation.

* build/ac-macros/libsecret.m4: New, provides --with-gnome-keyring.

* configure.ac: Change --with-gnome-keyring to --with-old-gnome-keyring

 and disable by default.

* aclocal.m4: Include libsecret.m4.

* subversion/libsvn_auth_gnome_keyring/gnome_keyring.c: Add new

 libsecret implementation conditional on SVN_HAVE_LIBSECRET, make old

 code conditional on SVN_HAVE_GNOME_KEYRING,

* subversion/libsvn_subr/auth.c

 (svn_auth_get_platform_specific_provider): Make already conditional

 code depend on SVN_HAVE_LIBSECRET.

* subversion/include/svn_auth.h

 (SVN_AUTH_PARAM_GNOME_KEYRING_UNLOCK_PROMPT_FUNC,

  SVN_AUTH_PARAM_GNOME_KEYRING_UNLOCK_PROMPT_BATON): Deprecate.

* subversion/include/private/svn_cmdline_private.h

 (svn_cmdline__auth_gnome_keyring_unlock_prompt): Deprecate.

* subversion/libsvn_subr/prompt.c

 (svn_cmdline__auth_gnome_keyring_unlock_prompt): Make conditional.

* subversion/tests/libsvn_subr/auth-test.c

 (test_platform_specific_auth_providers): Make already conditional

 code depend on SVN_HAVE_LIBSECRET.

Show less