From: Tomas Mraz Date: Tue, 11 Nov 2025 09:11:44 +0000 (+0100) Subject: Test invalid out of range character handling in UTF8_getc() X-Git-Tag: 4.0-PRE-CLANG-FORMAT-WEBKIT~196 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3595339b6901d9880282168eca75773080969c38;p=thirdparty%2Fopenssl.git Test invalid out of range character handling in UTF8_getc() Reviewed-by: Dmitry Belyavskiy Reviewed-by: Paul Dale Reviewed-by: Norbert Pocs (Merged from https://github.com/openssl/openssl/pull/29119) --- diff --git a/test/asn1_internal_test.c b/test/asn1_internal_test.c index d4a2bb10ba7..55bc92cb644 100644 --- a/test/asn1_internal_test.c +++ b/test/asn1_internal_test.c @@ -191,6 +191,16 @@ static int test_unicode_range(void) return ok; } +static int test_invalid_utf8(void) +{ + const unsigned char inv_utf8[] = "\xF4\x90\x80\x80"; + unsigned long val; + + if (!TEST_int_lt(UTF8_getc(inv_utf8, sizeof(inv_utf8), &val), 0)) + return 0; + return 1; +} + /********************************************************************** * * Tests of object creation @@ -551,6 +561,7 @@ int setup_tests(void) ADD_TEST(test_standard_methods); ADD_TEST(test_empty_nonoptional_content); ADD_TEST(test_unicode_range); + ADD_TEST(test_invalid_utf8); ADD_TEST(test_obj_create); ADD_TEST(test_obj_nid_undef); ADD_TEST(posix_time_test);