|
103 | 103 | "\"foo\":\"abc\",\"" FIRST_QUERY_KEY "\":" FIRST_QUERY_KEY_ANSWER "}" |
104 | 104 | #define JSON_DOC_VARIED_SCALARS_LENGTH ( sizeof( JSON_DOC_VARIED_SCALARS ) - 1 ) |
105 | 105 |
|
106 | | -#define MULTIPLE_VALID_ESCAPES "\\\\ \\\" \\/ \\b \\f \\n \\r \\t \\\x12" |
| 106 | +#define MULTIPLE_VALID_ESCAPES "\\\\ \\\" \\/ \\b \\f \\n \\r \\t \\u0001" |
107 | 107 | #define MULTIPLE_VALID_ESCAPES_LENGTH ( sizeof( MULTIPLE_VALID_ESCAPES ) - 1 ) |
108 | 108 |
|
109 | 109 | #define JSON_DOC_QUERY_KEY_NOT_FOUND "{\"hello\": \"world\"}" |
|
354 | 354 | "\":{\"" SECOND_QUERY_KEY "\" : \"\\uD83D\\uD83D\"}}" |
355 | 355 | #define UNICODE_BOTH_SURROGATES_HIGH_LENGTH ( sizeof( UNICODE_BOTH_SURROGATES_HIGH ) - 1 ) |
356 | 356 |
|
357 | | -/* For security, \u0000 is disallowed. */ |
358 | | -#define UNICODE_ESCAPE_SEQUENCE_ZERO_CP \ |
359 | | - "{\"foo\":\"abc\",\"" FIRST_QUERY_KEY \ |
360 | | - "\":{\"" SECOND_QUERY_KEY "\" : \"\\u0000\"}}" |
361 | | -#define UNICODE_ESCAPE_SEQUENCE_ZERO_CP_LENGTH ( sizeof( UNICODE_ESCAPE_SEQUENCE_ZERO_CP ) - 1 ) |
362 | | - |
363 | 357 | /* /NUL escape is disallowed. */ |
364 | 358 | #define NUL_ESCAPE \ |
365 | 359 | "{\"foo\":\"abc\",\"" FIRST_QUERY_KEY \ |
@@ -580,6 +574,7 @@ void test_JSON_Validate_Legal_Documents( void ) |
580 | 574 |
|
581 | 575 | jsonStatus = JSON_Validate( JSON_DOC_MULTIPLE_VALID_ESCAPES, |
582 | 576 | JSON_DOC_MULTIPLE_VALID_ESCAPES_LENGTH ); |
| 577 | + |
583 | 578 | TEST_ASSERT_EQUAL( JSONSuccess, jsonStatus ); |
584 | 579 |
|
585 | 580 | jsonStatus = JSON_Validate( JSON_DOC_LEGAL_UTF8_BYTE_SEQUENCES, |
@@ -802,10 +797,6 @@ void test_JSON_Validate_Illegal_Documents( void ) |
802 | 797 | UNICODE_BOTH_SURROGATES_HIGH_LENGTH ); |
803 | 798 | TEST_ASSERT_EQUAL( JSONIllegalDocument, jsonStatus ); |
804 | 799 |
|
805 | | - jsonStatus = JSON_Validate( UNICODE_ESCAPE_SEQUENCE_ZERO_CP, |
806 | | - UNICODE_ESCAPE_SEQUENCE_ZERO_CP_LENGTH ); |
807 | | - TEST_ASSERT_EQUAL( JSONIllegalDocument, jsonStatus ); |
808 | | - |
809 | 800 | jsonStatus = JSON_Validate( UNICODE_VALID_HIGH_INVALID_LOW_SURROGATE, |
810 | 801 | UNICODE_VALID_HIGH_INVALID_LOW_SURROGATE_LENGTH ); |
811 | 802 | TEST_ASSERT_EQUAL( JSONIllegalDocument, jsonStatus ); |
@@ -1506,14 +1497,6 @@ void test_JSON_Search_Illegal_Documents( void ) |
1506 | 1497 | &outValueLength ); |
1507 | 1498 | TEST_ASSERT_EQUAL( JSONNotFound, jsonStatus ); |
1508 | 1499 |
|
1509 | | - jsonStatus = JSON_Search( UNICODE_ESCAPE_SEQUENCE_ZERO_CP, |
1510 | | - UNICODE_ESCAPE_SEQUENCE_ZERO_CP_LENGTH, |
1511 | | - COMPLETE_QUERY_KEY, |
1512 | | - COMPLETE_QUERY_KEY_LENGTH, |
1513 | | - &outValue, |
1514 | | - &outValueLength ); |
1515 | | - TEST_ASSERT_EQUAL( JSONNotFound, jsonStatus ); |
1516 | | - |
1517 | 1500 | jsonStatus = JSON_Search( UNICODE_VALID_HIGH_INVALID_LOW_SURROGATE, |
1518 | 1501 | UNICODE_VALID_HIGH_INVALID_LOW_SURROGATE_LENGTH, |
1519 | 1502 | COMPLETE_QUERY_KEY, |
|
0 commit comments