[pcre-dev] [Bug 2290] New: Recursion issue

Page principale
Supprimer ce message
Auteur: admin
Date:  
À: pcre-dev
Sujet: [pcre-dev] [Bug 2290] New: Recursion issue
https://bugs.exim.org/show_bug.cgi?id=2290

            Bug ID: 2290
           Summary: Recursion issue
           Product: PCRE
           Version: 8.42
          Hardware: x86-64
                OS: Windows
            Status: NEW
          Severity: bug
          Priority: medium
         Component: Code
          Assignee: ph10@???
          Reporter: vsmetnjak@???
                CC: pcre-dev@???


Hardware: this is tested on is x86-64, but compiled for x86.

Everything seems to work fine, but recursion.
Maybe i am missing something.

This does not match, but it's taken directly from pcre 8.xx manual.
It matches correctly on many pcreCompatibleOnlinePages,eg this one
www(-dot-)regexr(-dot-)com, if testing - don't forget to check pcre there in
right-upper corner and to use single '\' if copying down pattern.
pcre_exec returns -5 which is PCRE_ERROR_UNKNOWN_OPCODE.
Down re should match a balanced "(...abc(...)abc...)" or "(abc)" pattern, but
pcre_exec returns -5.
Re: "\\(([^()]++|(?R))*\\"

By the way, just to make sure, after i tested this first with original
non-modified code(and it's the same in both cases), i changed
REC_STACK_SAVE_MAX from 30 to 96 in 'pcre_exec.c'. Is this then 96/3=32
maxOnStackIndexes? is this correct?

Also, the same thing in pcre_exec when specifying offsets and offsetcount, is
this offsetcount/3=numMaxSubExpression? is this correct?
In this case i optimize this to use both in pcre_exec(...) and
REC_STACK_SAVE_MAX 96, which should suffice for max 32 subExpressions,
REC_STACK_SAVE_MAX(if more,malloc is used there), is this correct?

--
You are receiving this mail because:
You are on the CC list for the bug.