Logo white

OpenSystemsDevelopment / qpdf

Sign in
  • Sign in
  • Project
  • Files
  • Commits
  • Network
  • Graphs
  • Milestones
  • Issues 0
  • Merge Requests 0
  • Labels
  • Wiki
  • Commits 4,691
  • Compare
  • Branches 1
  • Tags 0
  • qpdf
  • ChangeLog
12 Aug, 2017
4 commits
  • Revert "Add page rotation example in contrib" ...
    ae0399ef
    This reverts commit 8ee83ca722baad9434119bb72d620dfd8e6103c4.
    
    This is being removed because qpdf now has its own page rotation. The
    example was an excellent contribution to qpdf, but now it illustrates
    rotating pages "by hand", which is no longer needed because of
    QPDFObjectHandle::rotatePage.
    Jay Berkenbilt authored
    2017-08-12 22:58:11 -0400  
    Browse File »
  • Add page rotation (fixes #132)
    cfa2eb97
    Jay Berkenbilt authored
    2017-08-12 22:57:38 -0400  
    Browse File »
  • Add --verbose flag
    d926d780
    Jay Berkenbilt authored
    2017-08-12 12:30:18 -0400  
    Browse File »
  • Change --single-pages to --split-pages ...
    df33c368
    This is in preparation for implementing page groups.
    Jay Berkenbilt authored
    2017-08-12 11:49:04 -0400  
    Browse File »

11 Aug, 2017
2 commits
  • Fix --newline-before-endstream option (fixes #133) ...
    36b3fe5a
    Add a newline unconditionally before endstream even if a newline was
    already written as part of the stream data.
    Jay Berkenbilt authored
    2017-08-11 20:57:05 -0400  
    Browse File »
  • Pad encryption parameters that are too short (fixes #96)
    8fe0b06c
    Jay Berkenbilt authored
    2017-08-11 19:53:56 -0400  
    Browse File »

10 Aug, 2017
4 commits
  • Remove PCRE
    9a96e233
    Jay Berkenbilt authored
    2017-08-10 21:30:32 -0400  
    Browse File »
  • Read xref table without PCRE ...
    30f109e2
    Also accept more errors than before.
    Jay Berkenbilt authored
    2017-08-10 21:30:32 -0400  
    Browse File »
  • Improve stream length recovery ...
    ca5b1d26
    Eliminate PCRE and find endobj not preceded by endstream. Be more lax
    about placement of endstream and endobj.
    Jay Berkenbilt authored
    2017-08-10 21:30:32 -0400  
    Browse File »
  • Remove unused PointerHolder interface ...
    c5dc6d80
    Also fix a bug resulting from incorrect use of PointerHolder because
    of this unused parameter.
    Jay Berkenbilt authored
    2017-08-10 19:01:38 -0400  
    Browse File »

05 Aug, 2017
2 commits
  • Add --split-pages option (fixes #30)
    49825e5c
    Jay Berkenbilt authored
    2017-08-05 10:22:33 -0400  
    Browse File »
  • Move page spec processing earlier
    909daf95
    Jay Berkenbilt authored
    2017-08-05 10:22:33 -0400  
    Browse File »

02 Aug, 2017
1 commit
  • Fix off-by-one error in --pages argument parsing (fixes #129)
    c88eaae2
    Jay Berkenbilt authored
    2017-08-02 21:08:43 -0400  
    Browse File »

30 Jul, 2017
1 commit
  • Add page rotation example in contrib ...
    8ee83ca7
    This is added to contrib rather than examples because it requires
    c++-11 and lacks a test suite, but it is still useful enough to
    include with the distribution.
    iskander.sharipov authored
    2017-07-30 08:55:15 -0400  
    Browse File »

29 Jul, 2017
8 commits
  • Allow reading command-line args from files (fixes #16)
    2d5b8544
    Jay Berkenbilt authored
    2017-07-29 22:23:21 -0400  
    Browse File »
  • Detect input file = output file (fixes #29)
    5993c3e8
    Jay Berkenbilt authored
    2017-07-29 20:58:01 -0400  
    Browse File »
  • Allow --check to coexist with and precede other operations (fixes #42)
    885b8781
    Jay Berkenbilt authored
    2017-07-29 19:56:21 -0400  
    Browse File »
  • When recover stream length, indicate the length (fixes #44)
    b43a0ac2
    Jay Berkenbilt authored
    2017-07-29 19:15:06 -0400  
    Browse File »
  • Add newline-before-endstream option (fixes #103)
    f37d399d
    Jay Berkenbilt authored
    2017-07-29 12:21:38 -0400  
    Browse File »
  • Handle zlib data errors better (fixes #106)
    6a7d53ad
    Jay Berkenbilt authored
    2017-07-29 12:19:04 -0400  
    Browse File »
  • Better recovery of bad stream start (fixes #104)
    07d6f770
    Jay Berkenbilt authored
    2017-07-29 12:19:04 -0400  
    Browse File »
  • Better handle split content streams (fixes #73) ...
    b389268f
    When parsing content streams, allow content to be split arbitrarily
    across stream boundaries.
    Jay Berkenbilt authored
    2017-07-29 12:19:04 -0400  
    Browse File »

28 Jul, 2017
1 commit
  • Add option to preserve unreferenced objects
    3a1ff5de
    Jay Berkenbilt authored
    2017-07-28 19:19:11 -0400  
    Browse File »

27 Jul, 2017
3 commits
  • Add precheck streams capability ...
    7f889252
    When requested, QPDFWriter will do more aggress prechecking of streams
    to make sure it can actually succeed in decoding them before
    attempting to do so. This will allow preservation of raw data even
    when the raw data is corrupted relative to the specified filters.
    Jay Berkenbilt authored
    2017-07-27 23:42:27 -0400  
    Browse File »
  • Convert stream filtering errors to warnings
    a4fd4b91
    Jay Berkenbilt authored
    2017-07-27 18:43:07 -0400  
    Browse File »
  • Convert object parsing errors to warnings ...
    40f00122
    QPDFObjectHandle::parseInternal now issues warnings instead of
    throwing exceptions for all error conditions that it finds (except
    internal logic errors) and has stronger recovery for things like
    invalid tokens and malformed dictionaries. This should improve qpdf's
    ability to recover from a wide range of broken files that currently
    cause it to fail.
    Jay Berkenbilt authored
    2017-07-27 18:20:31 -0400  
    Browse File »

26 Jul, 2017
6 commits
  • Include tests for other infinite loop bugs ...
    ac3c81a8
    fixes #117
    fixes #118
    fixes #119
    fixes #120
    
    Several other infinite loop bugs were fixed by previous changes.
    Include their test files in the test suite.
    Jay Berkenbilt authored
    2017-07-26 06:24:07 -0400  
    Browse File »
  • Don't interpret word tokens in content streams (fixes #82)
    12db0989
    Jay Berkenbilt authored
    2017-07-26 06:24:07 -0400  
    Browse File »
  • Detect recursion loops resolving objects (fixes #51) ...
    701b518d
    During parsing of an object, sometimes parts of the object have to be
    resolved. An example is stream lengths. If such an object directly or
    indirectly points to the object being parsed, it can cause an infinite
    loop. Guard against all cases of re-entrant resolution of objects.
    Jay Berkenbilt authored
    2017-07-26 06:24:07 -0400  
    Browse File »
  • Handle object ID 0 (fixes #99) ...
    afe0242b
    This is CVE-2017-9208.
    
    The QPDF library uses object ID 0 internally as a sentinel to
    represent a direct object, but prior to this fix, was not blocking
    handling of 0 0 obj or 0 0 R as a special case. Creating an object in
    the file with 0 0 obj could cause various infinite loops. The PDF spec
    doesn't allow for object 0. Having qpdf handle object 0 might be a
    better fix, but changing all the places in the code that assumes objid
    == 0 means direct would be risky.
    Jay Berkenbilt authored
    2017-07-26 06:24:07 -0400  
    Browse File »
  • Avoid xref reconstruction infinite loop (fixes #100) ...
    315092dd
    This is CVE-2017-9209.
    Jay Berkenbilt authored
    2017-07-26 06:24:07 -0400  
    Browse File »
  • Fix infinite loop while reporting an error (fixes #101) ...
    603f2223
    This is CVE-2017-9210.
    
    The description string for an error message included unparsing an
    object, which is too complex of a thing to try to do while throwing an
    exception. There was only one example of this in the entire codebase,
    so it is not a pervasive problem. Fixing this eliminated one class of
    infinite loop errors.
    Jay Berkenbilt authored
    2017-07-26 06:24:07 -0400  
    Browse File »

10 Nov, 2015
1 commit
  • Prepare 6.0.0 release
    b7302a9b
    Jay Berkenbilt authored
    2015-11-10 12:48:52 -0500  
    Browse File »

01 Nov, 2015
1 commit
  • Prepare 5.2.0 release
    e5abc789
    Jay Berkenbilt authored
    2015-11-01 16:40:01 -0500  
    Browse File »

31 Oct, 2015
2 commits
  • Tolerate some mangled xref tables ...
    b62cbe25
    If xref table entries lack the spec-required trailing whitespace or
    contain a small amount of extra space, handle them anyway.
    Jay Berkenbilt authored
    2015-10-31 18:56:43 -0400  
    Browse File »
  • Implement deterministic ID ...
    b8bdef0a
    For non-encrypted files, determinstic ID generation uses file contents
    instead of timestamp and file name. At a small runtime cost, this
    enables generation of the same /ID if the same inputs are converted in
    the same way multiple times.
    Jay Berkenbilt authored
    2015-10-31 18:56:42 -0400  
    Browse File »

24 May, 2015
4 commits
  • Prepare 5.1.3 release
    94e55394
    Jay Berkenbilt authored
    2015-05-24 17:26:49 -0400  
    Browse File »
  • fix-qdf: handle object streams with > 255 objects ...
    b356b9df
    fix-qdf was previously hard-coding the number of bytes for the f2
    field of the xref stream entry. This addresses issue #37. Thanks
    aluebcke for reporting.
    Jay Berkenbilt authored
    2015-05-24 16:52:42 -0400  
    Browse File »
  • Handle Microsoft crypt provider without prior keys ...
    cf43882e
    As reported in issue #40, a call to CryptAcquireContext in
    SecureRandomDataProvider fails in a fresh windows install prior to any
    user keys being created in AppData\Roaming\Microsoft\Crypto\RSA.
    
    Thanks michalrames.
    Jay Berkenbilt authored
    2015-05-24 16:52:42 -0400  
    Browse File »
  • include time.h in QUtil.hh ...
    857bb208
    QUtil.hh needs time.h to get time_t on some platforms. Thanks Peter
    Korsgaard <peter@korsgaard.com>
    Jay Berkenbilt authored
    2015-05-24 16:26:05 -0400  
    Browse File »