Re: [PATCH] Fix small overread during SASLprep - Mailing list pgsql-hackers

From Daniel Gustafsson
Subject Re: [PATCH] Fix small overread during SASLprep
Date
Msg-id 778CDD92-8196-4EDA-A0F9-F783DEFBBD92@yesql.se
Whole thread Raw
Responses Re: [PATCH] Fix small overread during SASLprep
List pgsql-hackers
> On 9 Sep 2024, at 17:29, Jacob Champion <jacob.champion@enterprisedb.com> wrote:

> pg_utf8_string_len() doesn't check the remaining string length before
> calling pg_utf8_is_legal(), so there's a possibility of jumping a
> couple of bytes past the end of the string. (The overread stops there,
> because the function won't validate a sequence containing a null
> byte.)
>
> Here's a quick patch to fix it. I didn't see any other uses of
> pg_utf8_is_legal() with missing length checks.

Just to make sure I understand, this is for guarding against overreads in
validation of strings containing torn MB characters?  Assuming I didn't
misunderstand you this patch seems correct to me.

--
Daniel Gustafsson




pgsql-hackers by date:

Previous
From: Chapman Flack
Date:
Subject: Re: access numeric data in module
Next
From: Tom Lane
Date:
Subject: Re: pgstattuple: fix free space calculation