This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] regexec: Fix off-by-one bug in weight comparison [BZ #23036]


On 07/11/2018 12:20 PM, Dmitry V. Levin wrote:
> On Wed, Jul 11, 2018 at 04:43:41PM +0200, Florian Weimer wrote:
>> Each weight is prefixed by its length, and the length does not include
>> itself in the count.  This can be seen clearly from the find_idx
>> function in string/strxfrm_l.c, for example.  The old code behaved as if
>> the length itself counted, thus comparing an additional byte after the
>> weight, leading to spurious comparison failures and incorrect further
>> partitioning of character equivalence classes.
>>
>> (cherry picked from commit 7b2f4cedf044ea83f53f6b43a5bf6871eb9ce969)
>>
>> 2018-07-10  Florian Weimer  <fweimer@redhat.com>
>>
>> 	[BZ #23036]
>> 	* posix/regexec.c (check_node_accept_bytes): When comparing
>> 	weights, do not compare an extra byte after the end of the
>> 	weights.
>>
>> diff --git a/NEWS b/NEWS
>> index 2e7e7837ac..c5c78ffd3b 100644
>> --- a/NEWS
>> +++ b/NEWS
>> @@ -69,6 +69,7 @@ The following bugs are resolved with this release:
>>    [22947] FAIL: misc/tst-preadvwritev2
>>    [22963] cs_CZ: Add alternative month names
>>    [23005] Crash in __res_context_send after memory allocation failure
>> +  [23036] regexec: Fix off-by-one bug in weight comparison
>>    [23037] initialize msg_flags to zero for sendmmsg() calls
>>    [23069] sigaction broken on riscv64-linux-gnu
>>    [23102] Incorrect parsing of consecutive $ variables in runpath entries
> 
> Thanks for backporting this to 2.27.

+1! :-)

-- 
Cheers,
Carlos.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]