GNU bug report logs -
#24117
25.1; url-http-create-request: Multibyte text in HTTP request
Previous Next
Reported by: Sho Takemori <stakemorii <at> gmail.com>
Date: Sun, 31 Jul 2016 08:28:02 UTC
Severity: normal
Found in version 25.1
Done: Dmitry Gutov <dgutov <at> yandex.ru>
Bug is archived. No further changes may be made.
Full log
Message #107 received at 24117 <at> debbugs.gnu.org (full text, mbox):
> Cc: stakemorii <at> gmail.com, larsi <at> gnus.org, 24117 <at> debbugs.gnu.org
> From: Dmitry Gutov <dgutov <at> yandex.ru>
> Date: Wed, 10 Aug 2016 10:12:40 +0300
>
> On 08/09/2016 05:50 PM, Eli Zaretskii wrote:
>
> >> You can't encode it properly without parsing it first.
> >
> > You don't say what you meant by "encode properly". It's just a
> > string, and there are ways to make a string unibyte without any
> > parsing.
>
> Different parts of an URL are supposed to be encoded in different ways.
>
> For instance,
>
> http://банки.рф/фыва/
>
> turns into
>
> http://xn--80abwho.xn--p1ai/%D1%84%D1%8B%D0%B2%D0%B0/
Are you saying that url-generic-parse-url performs this encoding, and
that using a unibyte buffer causes that to fail?
> So I think the encoding of the URL parts should be performed inside
> url-http-create-request.
Fine with me, but when I suggested that, you didn't like the
suggestion. If you changed your mind, let's do that.
> On the master branch, host is passed through IDNA encoding, but
> real-fname is untouched. On emacs-25, I think we should convert both
> to unibyte.
Not sure I understand why there should be a difference between the two
branches. Encoding an ASCII string doesn't do any harm.
> Not sure encode-coding-string is the way to go (why would we assume
> UTF-8?).
Because using UTF-8 doesn't lose anything, you basically get the same
byte stream as stored internally (because 8-bit bytes are not supposed
to happen in URLs).
> (Why doesn't (encode-coding-string "aaaa" 'ascii) work?)
It's 'us-ascii, not 'ascii.
This bug report was last modified 8 years and 13 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.