aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf
AgeCommit message (Collapse)Author
2018-05-05Fix small logic error in Token construct (fixes #206)Jay Berkenbilt
The special case around name token was not reachable. This would only affect constructors of name tokens that were represented in non-canonical form such as with a hex substitution for a printable character. The error was harmless but still a bug.
2018-04-15Limit depth of nesting in direct objects (fixes #202)Jay Berkenbilt
This fixes CVE-2018-9918.
2018-03-06Prepare 8.0.2 releaserelease-qpdf-8.0.2Jay Berkenbilt
2018-03-06Properly handle pages with no contents (fixes #194)Jay Berkenbilt
Remove calls to assertPageObject(). All cases in the library that called assertPageObject() work fine if you don't call assertPageObject() because nothing assumes anything that was being checked by that call. Removing the calls enables more files to be successfully processed.
2018-03-06Pl_Buffer starts in a ready stateJay Berkenbilt
2018-03-05Treat loop in xref tables as damage (fixes #192)Jay Berkenbilt
Prior to this fix, if there was a loop detected in following /Prev pointers in xref streams/tables, it would cause qpdf to lose data. Note that this condition causes many PDF readers to hang or fail.
2018-03-04Prepare 8.0.1 releaserelease-qpdf-8.0.1Jay Berkenbilt
2018-03-03Ignore zlib data check errors (fixes #191)Jay Berkenbilt
2018-02-25Release 8.0.0release-qpdf-8.0.0Jay Berkenbilt
2018-02-258.0.rc3release-qpdf-8.0.rc3Jay Berkenbilt
2018-02-258.0.rc2release-qpdf-8.0.rc2Jay Berkenbilt
2018-02-25Update version to 8.0.rc1release-qpdf-8.0.rc1Jay Berkenbilt
This is for testing the release process, particularly as it pertains to AppImage creation.
2018-02-21Bump version number and sonameJay Berkenbilt
Bump to an alpha release. This version is not being widely released but is being used to push the new shared library version through the debian packaging system and to test out github releases.
2018-02-19Properly handle strings with PDF Doc Encoding (fixes #179)Jay Berkenbilt
The QPDF_String::getUTF8Val() method was not treating strings that weren't explicitly Unicode as PDF Doc Encoded. This only affects characters in the range 0x80 through 0xa0.
2018-02-19Add C API for checking PDF filesJay Berkenbilt
2018-02-19More robust handling of type errorsJay Berkenbilt
Give objects descriptions and context so it is possible to issue warnings instead of fatal errors for attempts to access objects of the wrong type.
2018-02-19Replace "file position" with "offset" in error messagesJay Berkenbilt
Sometimes it's an offset in an object stream or a content stream, so file position is confusing in some cases.
2018-02-19Include omitted object description in error messageJay Berkenbilt
2018-02-19Include filename in object stream parse errorJay Berkenbilt
2018-02-19Push members of QPDFObjectHandle into a Members objectJay Berkenbilt
As in other cases, this is to enable adding new member variables in the future without breaking ABI compatibility.
2018-02-19Simplify TokenFilter interfaceJay Berkenbilt
Expose Pl_QPDFTokenizer, and have it do more of the work of managing the token filter's pipeline.
2018-02-19Move Pl_QPDFTokenizer to public interfaceJay Berkenbilt
2018-02-19Add additional interface for filtering page contentsJay Berkenbilt
2018-02-19Clean up commentJay Berkenbilt
2018-02-19Detect and report bad tokens in content normalizationJay Berkenbilt
2018-02-19Implement TokenFilter and refactor Pl_QPDFTokenizerJay Berkenbilt
Implement a TokenFilter class and refactor Pl_QPDFTokenizer to use a TokenFilter class called ContentNormalizer. Pl_QPDFTokenizer is now a general filter that passes data through a TokenFilter.
2018-02-19Add coalesce contents capabilityJay Berkenbilt
2018-02-19Bug fix: content normalizer should not add trailing newlineJay Berkenbilt
Adding a trailing newline in content normalization damages files whose contents are split across streams in the middle of tokens. Let QPDFWriter add the newline with the indicator to ignore the newline, which it already does. This changes the way some qdf files look.
2018-02-19Refactor parseContentStreamJay Berkenbilt
2018-02-19Remove redundant methodJay Berkenbilt
Remove a redundant method that was equal to another one with additional arguments. This breaks binary compatibility, but there are other ABI breaking changes in the upcoming release, so now is the time to do it.
2018-02-19Use inline image token in content parserJay Berkenbilt
2018-02-19Use space tokens in tokenizer filterJay Berkenbilt
2018-02-19Use inline image token type in tokenizer filterJay Berkenbilt
2018-02-19Inline image token typeJay Berkenbilt
2018-02-19Push QPDFTokenizer members into a nested structureJay Berkenbilt
This is for protection against future ABI breaking changes.
2018-02-19Lexer enhancements: EOF, comment, spaceJay Berkenbilt
Significant enhancements to the lexer to improve EOF handling and to support comments and spaces as tokens. Various other minor issues were fixed as well.
2018-02-19Add option to save pass 1 of lineariziationJay Berkenbilt
This is useful only for debugging the linearization code.
2018-02-05Prepare 7.1.1 releaserelease-qpdf-7.1.1Jay Berkenbilt
2018-02-05Fix linearization for files with nonstandard ID lengthJay Berkenbilt
2018-02-04Fix setLineBuf for bsd (fixes #177)Jay Berkenbilt
Use 0 instead of NULL in a cast.
2018-02-04Remove use of std::abs (fixes #172)Jay Berkenbilt
Different compilers want different choices of headers for std::abs. It's easier to just to not use it.
2018-02-04Fix indentationJay Berkenbilt
2018-02-04Fix offset in error messageJay Berkenbilt
2018-01-29Pl_QPDFTokenizer: Use unsigned_char_pointer instead of copyJay Berkenbilt
2018-01-29Minor fixes to tokenizerJay Berkenbilt
2018-01-15Update version numbers for 7.1.0release-qpdf-7.1.0Jay Berkenbilt
2018-01-15Fixes for clangJay Berkenbilt
2018-01-14Allow raw encryption key to be specifiedJay Berkenbilt
Add options to enable the raw encryption key to be directly shown or specified. Thanks to Didier Stevens <didier.stevens@gmail.com> for the idea and contribution of one implementation of this idea.
2018-01-14Add QUtil::hex_decodeJay Berkenbilt
2018-01-14Allow trailing . in numeric token (fixes #165)Jay Berkenbilt