From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=45443 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OF7dj-0003IQ-QV for qemu-devel@nongnu.org; Thu, 20 May 2010 11:26:37 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OF7dR-0004ex-Bn for qemu-devel@nongnu.org; Thu, 20 May 2010 11:26:14 -0400 Received: from mx1.redhat.com ([209.132.183.28]:40579) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OF7dR-0004ep-3M for qemu-devel@nongnu.org; Thu, 20 May 2010 11:26:09 -0400 Message-ID: <4BF5548B.1000505@redhat.com> Date: Thu, 20 May 2010 17:26:03 +0200 From: Paolo Bonzini MIME-Version: 1.0 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> <20100520122532.0e20ee7c@redhat.com> In-Reply-To: <20100520122532.0e20ee7c@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] Re: [PATCH 2/6] json-lexer: Handle missing escapes List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Luiz Capitulino Cc: aliguori@us.ibm.com, qemu-devel@nongnu.org On 05/20/2010 05:25 PM, Luiz Capitulino wrote: > On Thu, 20 May 2010 17:16:01 +0200 > 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 >>> >>> But we do: >>> >>> [IN_DQ_STRING] = { >>> [1 ... 0xFF] = IN_DQ_STRING, >>> ['\\'] = IN_DQ_STRING_ESCAPE, >>> ['"'] = IN_DONE_STRING, >>> }, >>> >>> Shouldn't we cover 0x20 .. 0xFF instead? >> >> If it's the lexer, isn't just it being liberal in what it accepts? > > Yes, it's the lexer, but you meant that the fix should be in > somewhere else? I meant that we're just accepting some invalid JSON and that's not a big deal. Paolo