From: Jakub Narebski <jnareb@gmail.com>
To: Sven Strickroth <sven.strickroth@tu-clausthal.de>
Cc: git@vger.kernel.org, Jeff King <peff@peff.net>
Subject: Re: [PATCH] honour GIT_ASKPASS for querying username in git-svn
Date: Tue, 27 Dec 2011 17:00:57 +0100 [thread overview]
Message-ID: <201112271700.58078.jnareb@gmail.com> (raw)
In-Reply-To: <4EF9D8B9.9060106@tu-clausthal.de>
On Tue, 27 Dec 2011, Sven Strickroth wrote:
> Am 27.12.2011 15:33 schrieb Jakub Narebski:
>>> +sub prompt {
>>> + my ($self, $prompt) = _maybe_self(@_);
>>> + if (exists $ENV{'GIT_ASKPASS'}) {
>>> + return _prompt($ENV{'GIT_ASKPASS'}, $prompt);
>>> + } elsif (exists $ENV{'SSH_ASKPASS'}) {
>>> + return _prompt($ENV{'SSH_ASKPASS'}, $prompt);
>>> + } else {
>>> + return undef;
>>> + }
>>> +}
>>
>> ...and provide some kind of fallback even if neither of GIT_ASKPASS
>> nor SSH_ASKPASS are set (perhaps assuming that some Perl packages from
>> CPAN are installed).
>
> If neither of GIT_ASKPASS nor SSH_ASKPASS are set the caller has to
> handle the request. This has to be done this way, because of lots of
> different needs (username, password (no echo) and so on).
I think that Git.pm and therefore git commands written in Perl should
behave the same as git command written in C; and I think builtins do
use common gitprompt fallback.
>>> +sub _prompt {
>>> + my ($self, $askpass, $prompt) = _maybe_self(@_);
>>> + my $ret;
>>> + open(PH, "-|", $askpass, $prompt);
>>> + $ret = <PH>;
>>> + $ret =~ s/[\012\015]//g; # strip \n\r
>>> + close(PH);
>>> + return $ret;
>>> +}
>>
>> Please, use modern Perl, in particula use lexical filehandles instead
>> of typeglobs (which are global variables), i.e.
>
> I used the same style as I found in Git.pm (see lines I removed in patch 2).
Yes, that should be fixed (together with host of other issues), but
one should use modern and _better_ way (no possibility of action at
distance).
--
Jakub Narebski
Poland
next prev parent reply other threads:[~2011-12-27 16:01 UTC|newest]
Thread overview: 82+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-17 15:15 [PATCH] honour GIT_ASKPASS for querying username in git-svn Sven Strickroth
2011-11-18 11:36 ` Erik Faye-Lund
2011-11-18 13:30 ` Sven Strickroth
2011-11-18 14:19 ` Erik Faye-Lund
2011-11-26 11:33 ` Sven Strickroth
2011-11-30 6:44 ` Jeff King
2011-12-26 23:49 ` Sven Strickroth
2011-12-27 14:33 ` Jakub Narebski
2011-12-27 14:39 ` Sven Strickroth
2011-12-27 16:00 ` Jakub Narebski [this message]
2011-12-27 16:01 ` [PATCH 0/5] honour *_ASKPASS for querying user " Sven Strickroth
2011-12-27 16:05 ` [PATCH 1/5] add central method for prompting a user using GIT_ASKPASS or SSH_ASKPASS Sven Strickroth
2011-12-27 20:47 ` Junio C Hamano
2011-12-27 23:12 ` Thomas Adam
2011-12-27 23:35 ` Junio C Hamano
2011-12-27 16:06 ` [PATCH 2/5] switch to central prompt method Sven Strickroth
2011-12-27 20:47 ` Junio C Hamano
2011-12-27 16:07 ` [PATCH 3/5] honour *_ASKPASS for querying username and for querying further actions like unknown certificates Sven Strickroth
2011-12-27 20:56 ` Junio C Hamano
2011-12-27 16:07 ` [PATCH 4/5] ignore empty *_ASKPASS variables Sven Strickroth
2011-12-27 21:00 ` Junio C Hamano
2011-12-27 16:07 ` [PATCH 5/5] make askpass_prompt a global prompt method for asking users Sven Strickroth
2011-12-27 21:10 ` Junio C Hamano
2011-12-27 21:41 ` Junio C Hamano
2011-12-28 0:11 ` [PATCH 1/2] git-svn, perl/Git.pm: add central method for prompting passwords honoring GIT_ASKPASS and SSH_ASKPASS Sven Strickroth
2011-12-28 2:34 ` Junio C Hamano
2011-12-28 16:17 ` Sven Strickroth
2011-12-28 18:56 ` Jakub Narebski
2012-01-03 10:17 ` Ævar Arnfjörð Bjarmason
2012-01-03 10:25 ` Sven Strickroth
2012-01-03 12:03 ` Ævar Arnfjörð Bjarmason
2012-01-03 12:06 ` Ævar Arnfjörð Bjarmason
2012-01-03 13:18 ` Sven Strickroth
2012-01-03 19:42 ` Junio C Hamano
2012-01-03 22:51 ` Junio C Hamano
2012-01-03 23:27 ` Sven Strickroth
2012-01-04 0:10 ` Junio C Hamano
2012-01-04 7:55 ` Sven Strickroth
2012-01-04 8:31 ` Sven Strickroth
2012-01-04 13:34 ` Jeff King
2012-01-04 14:13 ` Sven Strickroth
2012-01-04 19:08 ` Junio C Hamano
2012-01-07 4:27 ` Sven Strickroth
2012-01-04 18:58 ` Junio C Hamano
2012-01-04 19:20 ` Sven Strickroth
2011-12-28 0:12 ` [PATCH 2/2] git-svn, perl/Git.pm: extend and use Git->prompt method for querying users Sven Strickroth
2011-12-28 2:41 ` Junio C Hamano
2011-12-28 10:41 ` Sven Strickroth
2011-12-28 21:00 ` Junio C Hamano
2011-12-28 21:38 ` Junio C Hamano
2011-12-28 21:47 ` Sven Strickroth
2011-12-28 22:29 ` Junio C Hamano
2011-12-30 4:40 ` Sven Strickroth
2011-12-30 13:54 ` Jeff King
2011-12-30 14:53 ` Sven Strickroth
2012-01-01 9:11 ` Junio C Hamano
2012-01-01 19:57 ` Sven Strickroth
2012-01-01 20:55 ` Sven Strickroth
2012-01-01 19:45 ` Sven Strickroth
2012-01-03 18:19 ` Junio C Hamano
2012-01-03 18:40 ` Jeff King
2012-02-12 16:02 ` Sven Strickroth
2012-02-12 16:11 ` Jakub Narebski
2012-02-12 16:26 ` Sven Strickroth
2012-02-14 22:20 ` Jeff King
2012-02-14 22:35 ` Junio C Hamano
2012-02-14 22:47 ` Jeff King
2012-01-03 23:24 ` Sven Strickroth
2012-01-04 0:12 ` Junio C Hamano
2012-10-06 15:18 ` Sven Strickroth
2012-10-06 18:28 ` Junio C Hamano
2012-11-11 16:40 ` [PATCH 0/2] second try Sven Strickroth
2012-11-24 19:07 ` Sven Strickroth
2012-11-26 4:50 ` Junio C Hamano
2012-12-17 15:54 ` Sven Strickroth
2012-12-17 20:08 ` Junio C Hamano
2012-12-18 0:28 ` [PATCH 1/3] git-svn, perl/Git.pm: add central method for prompting passwords Sven Strickroth
2012-12-18 0:28 ` [PATCH 2/3] perl/Git.pm: Honor SSH_ASKPASS as fallback if GIT_ASKPASS is not set Sven Strickroth
2012-12-18 0:57 ` Jeff King
2012-12-18 0:28 ` [PATCH 3/3] git-svn, perl/Git.pm: extend and use Git->prompt method for querying users Sven Strickroth
2012-11-11 16:40 ` [PATCH 1/2] git-svn, perl/Git.pm: add central method for prompting passwords honoring GIT_ASKPASS and SSH_ASKPASS Sven Strickroth
2012-11-11 16:41 ` [PATCH 2/2] git-svn, perl/Git.pm: extend and use Git->prompt method for querying users Sven Strickroth
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201112271700.58078.jnareb@gmail.com \
--to=jnareb@gmail.com \
--cc=git@vger.kernel.org \
--cc=peff@peff.net \
--cc=sven.strickroth@tu-clausthal.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.