[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 11/56] check-qjson: Cover UTF-8 in single quoted
From: |
Eric Blake |
Subject: |
Re: [Qemu-devel] [PATCH 11/56] check-qjson: Cover UTF-8 in single quoted strings |
Date: |
Thu, 9 Aug 2018 09:17:11 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 |
On 08/08/2018 07:02 AM, Markus Armbruster wrote:
utf8_string() tests only double quoted strings. Cover single quoted
strings, too: store the strings to test without quotes, then wrap them
in either kind of quote.
Signed-off-by: Markus Armbruster <address@hidden>
---
tests/check-qjson.c | 427 ++++++++++++++++++++++----------------------
1 file changed, 214 insertions(+), 213 deletions(-)
Pre-existing, but:
/* 2.2.4 4 bytes U+1FFFFF */
Technically, Unicode ends at U+10FFFF (21 bits). Anything beyond that is
not valid Unicode, even if it IS a valid interpretation of UTF-8 encoding.
{
- "\"\xF7\xBF\xBF\xBF\"",
+ "\xF7\xBF\xBF\xBF",
NULL, /* bug: rejected */
- "\"\\uFFFD\"",
+ "\\uFFFD",
"\xF7\xBF\xBF\xBF",
},
/* 2.2.5 5 bytes U+3FFFFFF */
Which makes this one also questionable,
{
- "\"\xFB\xBF\xBF\xBF\xBF\"",
+ "\xFB\xBF\xBF\xBF\xBF",
NULL, /* bug: rejected */
- "\"\\uFFFD\"",
+ "\\uFFFD",
"\xFB\xBF\xBF\xBF\xBF",
},
/* 2.2.6 6 bytes U+7FFFFFFF */
and this one.
{
/* last one in last plane: U+10FFFD */
- "\"\xF4\x8F\xBF\xBD\"",
"\xF4\x8F\xBF\xBD",
- "\"\\uDBFF\\uDFFD\""
+ "\xF4\x8F\xBF\xBD",
+ "\\uDBFF\\uDFFD"
},
{
/* first one beyond Unicode range: U+110000 */
while these are reasonable.
The conversion of the initializer looks sane (well, mechanical). Ergo:
Reviewed-by: Eric Blake <address@hidden>
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3266
Virtualization: qemu.org | libvirt.org
- [Qemu-devel] [PATCH 44/56] json: Fix latent parser aborts at end of input, (continued)
- [Qemu-devel] [PATCH 44/56] json: Fix latent parser aborts at end of input, Markus Armbruster, 2018/08/08
- [Qemu-devel] [PATCH 20/56] check-qjson: Document we expect invalid UTF-8 to be rejected, Markus Armbruster, 2018/08/08
- [Qemu-devel] [PATCH 52/56] json: Eliminate lexer state IN_WHITESPACE, pseudo-token JSON_SKIP, Markus Armbruster, 2018/08/08
- [Qemu-devel] [PATCH 48/56] json: Enforce token count and size limits more tightly, Markus Armbruster, 2018/08/08
- [Qemu-devel] [PATCH 11/56] check-qjson: Cover UTF-8 in single quoted strings, Markus Armbruster, 2018/08/08
- Re: [Qemu-devel] [PATCH 11/56] check-qjson: Cover UTF-8 in single quoted strings,
Eric Blake <=
- Re: [Qemu-devel] [PATCH 11/56] check-qjson: Cover UTF-8 in single quoted strings, Markus Armbruster, 2018/08/10
- Re: [Qemu-devel] [PATCH 11/56] check-qjson: Cover UTF-8 in single quoted strings, Eric Blake, 2018/08/10
- Re: [Qemu-devel] [PATCH 11/56] check-qjson: Cover UTF-8 in single quoted strings, Markus Armbruster, 2018/08/13
- Re: [Qemu-devel] [PATCH 11/56] check-qjson: Cover UTF-8 in single quoted strings, Eric Blake, 2018/08/13
- Re: [Qemu-devel] [PATCH 11/56] check-qjson: Cover UTF-8 in single quoted strings, Markus Armbruster, 2018/08/14
Re: [Qemu-devel] [PATCH 00/56] json: Fixes, error reporting improvements, cleanups, Markus Armbruster, 2018/08/08