https://bz.apache.org/bugzilla/show_bug.cgi?id=60405

Dominik Stadler <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEEDINFO                    |NEW

--- Comment #2 from Dominik Stadler <[email protected]> ---
This seems to go quite a bit deeper than a simple parse error, the spec
contains a separate list of functions called "cetab", which Apache POI does not
support at all. The AIOOB is caused because parsing does not parse the bit
"fCeFunc", which then ends up in the function-index and makes it out of bounds:


-----------
tab (15 bits): A structure that specifies the function to be called. If fCeFunc
is 1, then this field
specifies a Cetab value. If fCeFunc is 0, then this field specifies a Ftab
value.

C - fCeFunc (1 bit): A bit that specifies whether tab specifies a Cetab value
or a Ftab value.
-----------


So it will not only require to fix parsing FuncVarPtg by reading the fCeFunc
bit, but also implementing a second list of known function definitions,
potentially ending up in new required functions later.


BTW, I did not find any such exception in our large regression testing (
http://people.apache.org/~centic/poi_regression/reportsAll/ ), which indicates
that such files are likely very rare.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to