To any users of the Subversion bundle: How can I add support for providing passwords to svn when I'm using DAV_SVN with SSL and key-based authentication?
For example, right now in the svn info output, there are six requests for the password. If those are all ignored, I believe that I don't get an SSL connection, which is... undesirable.
Any advice? I'm certainly willing to code the solution myself, if needs be.
On 3/9/2006, at 15:41, Chris Rose wrote:
[...] right now in the svn info output, there are six requests for the password.
I am curious, if this is key-based authorization, why does it prompt for a password? Is this the pass phrase used to decrypt the locally stored private key? If so, a workaround would likely be to not have your private key encrypted -- for machines where you are the (only) system administrator, this should be safe.
[...] I'm certainly willing to code the solution myself, if needs be.
The actions in the Subversion bundle are all calling the svn executable and parsing the output. The commands would need to parse the request for the password, use something like CocoaDialog to prompt the user, and then give that back to svn.
While I imagine such thing would be fragile, it should be possible.
On Sep 4, 2006, at 9:44 PM, Allan Odgaard wrote:
The actions in the Subversion bundle are all calling the svn executable and parsing the output. The commands would need to parse the request for the password, use something like CocoaDialog to prompt the user, and then give that back to svn.
While I imagine such thing would be fragile, it should be possible.
Look in to using /usr/bin/expect if you would like to do that. There is a [ruby library][1] to do it as well:
require "pty" require "expect"
PTY.spawn("svn command…") do |read, write, pid| read.expect(/password: /, 0.1) do # timeout of 0.1 seconds pass = prompt_for_password() write.puts(password) end end
[1]: http://ruby-doc.org/stdlib/libdoc/pty/rdoc/index.html
-- Daniel
On 9/4/06, Allan Odgaard throw-away-1@macromates.com wrote:
On 3/9/2006, at 15:41, Chris Rose wrote:
[...] right now in the svn info output, there are six requests for the password.
I am curious, if this is key-based authorization, why does it prompt for a password? Is this the pass phrase used to decrypt the locally stored private key? If so, a workaround would likely be to not have your private key encrypted -- for machines where you are the (only) system administrator, this should be safe.
That's the case, alright, and I suppose I could remove the password from the local key, for this one machine, but securing keys (especially ones that provide access to critical resources like my source repository) strikes me as a good idea, and one that should be supported.
I'll look into the expect scripting, to see if I can provide the password there.
On Sep 4, 2006, at 6:49 PM, Chris Rose wrote:
On 9/4/06, Allan Odgaard throw-away-1@macromates.com wrote:
On 3/9/2006, at 15:41, Chris Rose wrote:
[...] right now in the svn info output, there are six requests for the password.
I am curious, if this is key-based authorization, why does it prompt for a password? Is this the pass phrase used to decrypt the locally stored private key? If so, a workaround would likely be to not have your private key encrypted -- for machines where you are the (only) system administrator, this should be safe.
That's the case, alright, and I suppose I could remove the password from the local key, for this one machine, but securing keys (especially ones that provide access to critical resources like my source repository) strikes me as a good idea, and one that should be supported.
I'll look into the expect scripting, to see if I can provide the password there.
-- Chris R. ====== Not to be taken literally, internally, or seriously.
I use KeyChain 2.6.2; http://www.gentoo.org/proj/en/keychain/
Works great, kinda like the Mac OS X keychain. Just put in your password once after reboot and you're gold. Might want to have some script close the chain on sleep or something though if it's on a laptop.
thomas Aylott — subtleGradient — CrazyEgg