All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] git-svn: Use platform-specific svn authentication providers (e.g., gnome-keyring)
@ 2010-09-08 18:55 Matthijs Kooijman
  0 siblings, 0 replies; 2+ messages in thread
From: Matthijs Kooijman @ 2010-09-08 18:55 UTC (permalink / raw)
  To: git

[-- Attachment #1: Type: text/plain, Size: 2088 bytes --]

Hi folks,

I've create below patch to make git work with platform-specific
authentication providers (in particular, I needed this to get my svn
passwords out of gnome-keyring, which isn't working currently).

Index: git-core/git-svn
===================================================================
--- git-core.orig/git-svn       2010-09-08 20:11:16.000000000 +0200
+++ git-core/git-svn    2010-09-08 20:26:38.000000000 +0200
@@ -4830,6 +4830,7 @@
 
 sub _auth_providers () {
        [
+         @{SVN::Core::auth_get_platform_specific_client_providers(undef, undef)},
          SVN::Client::get_simple_provider(),
          SVN::Client::get_ssl_server_trust_file_provider(),
          SVN::Client::get_simple_prompt_provider(

Note that the auth_get_platform_specific_client_provides function used is not
working correctly in current versions of SVN, I've posted a separate patch to
fix the perl bindings there [1].

[1]: http://svn.haxx.se/dev/archive-2010-09/0171.shtml

Furthermore, the function accepts two parameters: $config and $pool. I've left
both undef here, which works. For $config, this means the default set of
providers is used. I'm not sure what the implications are of not passing a
$pool, any comments?

The _auth_providers function is called from:
 - Git::SVN::Ra::new, where a $config and $pool would be available.
 - Git::SVN::Ra::trees_match, where neither is readily available (though
   looking more closely, it seems that both values are in fact stored in $self in
   the new method, so they would be available.
 - cmd_branch, where neither seems to be available.

So it does not seem trivial to pass in useful values for these two arguments in
all places. Any ideas on what would be a good way to handle this?

What's the idea behind custom SVN configuration anyway?  From the sources, it
seems that only a few commands allow specifying the SVN configuration, through
the --config-dir option (namely init, migrate, fetch, clone, dcommit, set-tree,
multi-fetch, rebase, but notably not dcommit).

Gr.

Matthijs

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [PATCH] git-svn: Use platform-specific svn authentication providers (e.g., gnome-keyring)
@ 2010-09-10 10:07 Matthijs Kooijman
  0 siblings, 0 replies; 2+ messages in thread
From: Matthijs Kooijman @ 2010-09-10 10:07 UTC (permalink / raw)
  To: git

[-- Attachment #1: Type: text/plain, Size: 2088 bytes --]

Hi folks,

I've create below patch to make git work with platform-specific
authentication providers (in particular, I needed this to get my svn
passwords out of gnome-keyring, which isn't working currently).

Index: git-core/git-svn
===================================================================
--- git-core.orig/git-svn       2010-09-08 20:11:16.000000000 +0200
+++ git-core/git-svn    2010-09-08 20:26:38.000000000 +0200
@@ -4830,6 +4830,7 @@
 
 sub _auth_providers () {
        [
+         @{SVN::Core::auth_get_platform_specific_client_providers(undef, undef)},
          SVN::Client::get_simple_provider(),
          SVN::Client::get_ssl_server_trust_file_provider(),
          SVN::Client::get_simple_prompt_provider(

Note that the auth_get_platform_specific_client_provides function used is not
working correctly in current versions of SVN, I've posted a separate patch to
fix the perl bindings there [1].

[1]: http://svn.haxx.se/dev/archive-2010-09/0171.shtml

Furthermore, the function accepts two parameters: $config and $pool. I've left
both undef here, which works. For $config, this means the default set of
providers is used. I'm not sure what the implications are of not passing a
$pool, any comments?

The _auth_providers function is called from:
 - Git::SVN::Ra::new, where a $config and $pool would be available.
 - Git::SVN::Ra::trees_match, where neither is readily available (though
   looking more closely, it seems that both values are in fact stored in $self in
   the new method, so they would be available.
 - cmd_branch, where neither seems to be available.

So it does not seem trivial to pass in useful values for these two arguments in
all places. Any ideas on what would be a good way to handle this?

What's the idea behind custom SVN configuration anyway?  From the sources, it
seems that only a few commands allow specifying the SVN configuration, through
the --config-dir option (namely init, migrate, fetch, clone, dcommit, set-tree,
multi-fetch, rebase, but notably not dcommit).

Gr.

Matthijs

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2010-09-10 10:07 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-09-08 18:55 [PATCH] git-svn: Use platform-specific svn authentication providers (e.g., gnome-keyring) Matthijs Kooijman
2010-09-10 10:07 Matthijs Kooijman

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.