Re: [msysGit] git-svn.perl should check GIT_ASKPASS environment

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Feb 11, 2011 at 9:17 AM, Jose Roberto Garcia Chico
<jose@xxxxxxxxxxxxx> wrote:
> git-svn.perl problem.
>
> prompt:
>        print STDERR $may_save ?
>              "(R)eject, accept (t)emporarily or accept (p)ermanently? " :
>              "(R)eject or accept (t)emporarily? ";
>        STDERR->flush;
>        $choice = lc(substr(<STDIN> || 'R', 0, 1));
>
> should check GIT_ASKPASS environment.
>
> For further information
>
> http://code.google.com/p/tortoisegit/issues/detail?id=706
>

As was already said in the thread you're linking to, this isn't a
Windows-specific git-issue. CC'ing the main Git mailing list, where
this discussion belongs.

But I don't think it should check GIT_ASKPASS, GIT_ASKPASS isn't a
general-purpose dialog-box hook, it's a hook for getting *passwords*.
To allow git-svn to query the user of a non-terminal user, another
mechanism would probably be created. But in any case, I we should do
something other than just waiting if we're not connected to a TTY. I
don't really know Perl that well, but perhaps something like this does
the trick?

diff --git a/git-svn.perl b/git-svn.perl
index 177dd25..24f3486 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -3964,6 +3964,9 @@ sub ssl_server_trust {
 	                               issuer_dname fingerprint);
 	my $choice;
 prompt:
+	if (!-t STDERR || !-t STDIN) {
+		return -1;
+	}
 	print STDERR $may_save ?
 	      "(R)eject, accept (t)emporarily or accept (p)ermanently? " :
 	      "(R)eject or accept (t)emporarily? ";
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]