Re: clone from url with email address as username?(escaping @ symbol)
- From
Matthieu Moy <matthieu.moy@grenoble-inp.fr>
- Date
- Sep 29, 2009, 18:09 UTC
- Message-ID
- <vpqws3hpqr1.fsf@bauges.imag.fr>
- In-Reply-To
- <alpine.DEB.2.00.0909291946520.23903@tvnag.unkk.fr>
Daniel Stenberg <daniel@haxx.se> writes:
Show 17 quoted lines
> On Tue, 29 Sep 2009, Matthieu Moy wrote: > >> Unfortunately, it seems the complete URL is passed to curl, and curl >> is the one doing it wrong. Indeed: >> >> $ curl -v https://user@email.com@server.com/path/ >> * getaddrinfo(3) failed for email.com@server.com:443 > > This is not exactly curl "doing it wrong". This is a user passing in > something that isn't a URL to the command that asks for a URL to work > on. The user part cannot legally have a '@' letter in a URL, you must > encode it. > >> In short, you have to use %40 to escape the @, and curl does it this >> way because the RFC doesn't allow @ in usernames. > > Exactly. So curl is not "wrong", it just can't work around this user-error.
It may not want work around user-errors, but you can hardly say that it _can't_. Many tools do in this case, Firefox is one of them. And anyway, trying to connect to email.com@server.com is probably the worst thing it can do.
At least, it could warn about two @ in the URL and say it can't handle it ...
-- Matthieu Moy http://www-verimag.imag.fr/~moy/