From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=40061 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OGdTu-0006Sx-Rr for qemu-devel@nongnu.org; Mon, 24 May 2010 15:38:44 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OGdTl-0002h1-Rt for qemu-devel@nongnu.org; Mon, 24 May 2010 15:38:34 -0400 Received: from mx1.redhat.com ([209.132.183.28]:13762) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OGdTl-0002gi-KD for qemu-devel@nongnu.org; Mon, 24 May 2010 15:38:25 -0400 Date: Mon, 24 May 2010 16:38:18 -0300 From: Luiz Capitulino Subject: Re: [Qemu-devel] Re: [PATCH 2/6] json-lexer: Handle missing escapes Message-ID: <20100524163818.18548106@redhat.com> In-Reply-To: <4BFAD3B6.9050204@codemonkey.ws> References: <1274303733-3700-1-git-send-email-lcapitulino@redhat.com> <1274303733-3700-3-git-send-email-lcapitulino@redhat.com> <4BF45BCF.5090300@codemonkey.ws> <20100520104433.1be3167c@redhat.com> <4BF55231.8020208@redhat.com> <4BF55A51.1080506@codemonkey.ws> <20100520132710.1e906771@redhat.com> <4BF56964.8030603@codemonkey.ws> <20100520154745.5b297d49@redhat.com> <4BF584D8.1000108@codemonkey.ws> <20100520162235.281f735e@redhat.com> <4BFAD3B6.9050204@codemonkey.ws> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: Paolo Bonzini , qemu-devel@nongnu.org On Mon, 24 May 2010 14:29:58 -0500 Anthony Liguori wrote: > On 05/20/2010 02:22 PM, Luiz Capitulino wrote: > > On Thu, 20 May 2010 13:52:08 -0500 > > Anthony Liguori wrote: > > > > > >> On 05/20/2010 01:47 PM, Luiz Capitulino wrote: > >> > >>> On Thu, 20 May 2010 11:55:00 -0500 > >>> Anthony Liguori wrote: > >>> > >>> > >>> > >>>> On 05/20/2010 11:27 AM, Luiz Capitulino wrote: > >>>> > >>>> > >>>>> On Thu, 20 May 2010 10:50:41 -0500 > >>>>> Anthony Liguori wrote: > >>>>> > >>>>> > >>>>> > >>>>> > >>>>>> On 05/20/2010 10:16 AM, Paolo Bonzini wrote: > >>>>>> > >>>>>> > >>>>>> > >>>>>>> On 05/20/2010 03:44 PM, Luiz Capitulino wrote: > >>>>>>> > >>>>>>> > >>>>>>> > >>>>>>>> I think there's another issue in the handling of strings. > >>>>>>>> > >>>>>>>> The spec says that valid unescaped chars are in the following range: > >>>>>>>> > >>>>>>>> unescaped = %x20-21 / %x23-5B / %x5D-10FFFF > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>> That's a spec bug IMHO. Tab is %x09. Surely you can include tabs in > >>>>>> strings. Any parser that didn't accept that would be broken. > >>>>>> > >>>>>> > >>>>>> > >>>>> Honestly, I had the impression this should be encoded as: %x5C %x74, but > >>>>> if you're right, wouldn't this be true for other sequences as well? > >>>>> > >>>>> > >>>>> > >>>> I don't think most reasonable clients are going to quote tabs as '\t'. > >>>> > >>>> > >>> That would be a bug, wouldn't it? > >>> > >>> > >> Tabs are valid in JavaScript strings and I don't think it's reasonable > >> to expect that a valid JavaScript string is not a valid JSON string. > >> > > IMO, we should do what the spec says and what bug free clients expect, > > what we consider reasonable or unreasonable is a different matter. > > > > How we encode strings is one thing, what we accept is something else. True. > Why shouldn't we be liberal in what we accept? It doesn't violate the > spec to accept more than it requires so why shouldn't we? For the reasons outlined by Avi, not sure how this serious this is though.