From: Jeff King <peff@peff.net>
To: Junio C Hamano <gitster@pobox.com>
Cc: Stefan Naewe <stefan.naewe@gmail.com>, git@vger.kernel.org
Subject: Re: [PATCH] http-push: don't always prompt for password
Date: Fri, 4 Nov 2011 13:43:03 -0400 [thread overview]
Message-ID: <20111104174303.GA22568@sigill.intra.peff.net> (raw)
In-Reply-To: <7vlirvdeb2.fsf@alter.siamese.dyndns.org>
On Fri, Nov 04, 2011 at 09:48:17AM -0700, Junio C Hamano wrote:
> Stefan Naewe <stefan.naewe@gmail.com> writes:
>
> > http-push prompts for a password when the URL is set as
> > 'https://user@host/repo' even though there is one set
> > in ~/.netrc. Pressing ENTER at the password prompt succeeds
> > then, but is a annoying and makes it almost useless
> > in a shell script, e.g.
> >
> > Signed-off-by: Stefan Naewe <stefan.naewe@gmail.com>
> > ---
>
> Thanks.
>
> With this the only callsite of init_curl_http_auth() becomes the one after
> we get the 401 response, and this caller makes sure that user_name is not
> NULL.
>
> Do we still want "if (user_name)" inside init_curl_http_auth()?
Since we now only call init_curl_http_auth when we know we need auth, I
think it would make more sense to just move the user_name asking there,
too, like:
static void init_curl_http_auth(CURL *result)
{
struct strbuf up = STRBUF_INIT;
if (!user_name)
user_name = xstrdup(git_getpass_with_description("Username", description);
if (!user_pass)
user_pass = xstrdup(git_getpass_with_description("Password", description);
strbuf_addf(&up, "%s:%s", user_name, user_pass);
curl_easy_setopt(result, CURLOPT_USERPWD, strbuf_detach(&up, NULL));
}
And then it's easy to swap out the asking for credential_fill() when it
becomes available. But I admit I don't care that much now, as I'll just
end up doing that refactoring later with my credential patches anyway.
> I tried to rewrite the proposed commit log message to describe the real
> issue, and here is what I came up with:
Your description looks accurate to me.
> What is somewhat troubling is that after analyzing the root cause of the
> issue, I am wondering if a more correct fix is to remove the user@ part
> from the URL (in other words, document that a URL with an embedded
> username will ask for password upfront, and tell the users that if they
> have netrc entries or if they are accessing a resource that does not
> require authentication, they should omit the username from the URL).
It's tempting, because the non-netrc case is the common one, and we are
dropping the round-trip avoidance for those people. I'm just not sure
that it's going to be obvious to users that they need to drop the user@
portion from their URL when using netrc. That seems like a bizarre
requirement from the user's POV, even if we do document it.
-Peff
next prev parent reply other threads:[~2011-11-04 17:43 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-31 5:00 [ANNOUNCE] Git 1.7.8.rc0 Junio C Hamano
2011-10-31 14:17 ` Stefan Näwe
2011-10-31 17:19 ` Junio C Hamano
2011-11-01 9:53 ` Stefan Näwe
2011-11-01 18:12 ` Junio C Hamano
2011-11-01 18:19 ` Jeff King
2011-11-01 20:06 ` Stefan Naewe
2011-11-01 20:18 ` Stefan Naewe
2011-11-02 10:27 ` Michael J Gruber
2011-11-02 18:03 ` Jeff King
2011-11-02 18:10 ` Jeff King
2011-11-02 19:13 ` Junio C Hamano
2011-11-02 20:09 ` Jeff King
2011-11-03 23:02 ` Junio C Hamano
2011-11-01 21:53 ` Stefan Naewe
2011-11-02 8:52 ` [RFC/PATCH] http-push: don't always prompt for password (Was Re: [ANNOUNCE] Git 1.7.8.rc0) Stefan Näwe
2011-11-02 14:08 ` Michael J Gruber
2011-11-02 17:13 ` [RFC/PATCH] http-push: don't always prompt for password Junio C Hamano
2011-11-02 17:23 ` Jeff King
2011-11-02 17:40 ` Junio C Hamano
2011-11-04 7:03 ` [PATCH] " Stefan Naewe
2011-11-04 16:48 ` Junio C Hamano
2011-11-04 17:43 ` Jeff King [this message]
2011-11-04 19:06 ` Junio C Hamano
2011-11-04 18:34 ` Stefan Naewe
2011-11-05 6:45 ` Junio C Hamano
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=20111104174303.GA22568@sigill.intra.peff.net \
--to=peff@peff.net \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=stefan.naewe@gmail.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).