On Thu, 2018-01-11 at 16:59 -0500, Probe Fuzzer wrote:
> src/base/PdfObjectStreamParserObject.cpp:99:30: runtime error: signed
> integer overflow: 94 + 9223372036854775807 cannot be represented in
> type 'long int'

        Hi,
the line 99 of that file looks like this:

  device.Device()->Seek( static_cast<std::streamoff>(lFirst + lOff) );

where both lFirst and lOff are 64bit integers, thus it all depends on
the statis_Cast and the size of streamoff, whose size may depend on
large file support being enabled or not. That's not a problem of
PoDoFo, is it?
  
> To reproduce the issue, compile libming with UBSAN "-
> fsanitize=undefined",

What is libming, please? I do not seem to have it here.

I'm also not able to reproduce this locally, using svn trunk at
revision 1866. I build PoDoFo with more than that sanitize flag and
nothing had been caught by the address sanitizer. The call ended with:

   Error: An error 5 ocurred during processing the pdf file.

   PoDoFo encountered an error. Error: 5 ePdfError_UnexpectedEOF
        Error Description: End of file was reached unxexpectedly.
        Callstack:
        #0 Error Source: .../src/base/PdfParser.cpp:232
                Information: Unable to load objects from file.
        #1 Error Source: .../src/base/PdfTokenizer.cpp:386
                Information: Expected variant.

and no segfault or anything like that.
        Bye,
        zyx

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Podofo-users mailing list
Podofo-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/podofo-users

Reply via email to