diff options
author | Jay Berkenbilt <ejb@ql.org> | 2019-11-09 17:29:52 +0100 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2019-11-09 18:33:15 +0100 |
commit | 5508f74603d7a816ab67456939bd3ee57676f842 (patch) | |
tree | e918fef9f6da33f7dc0b8a3c8e69369e29dc0a70 /ChangeLog | |
parent | b997fa5343ea42054338b9143b3205cb6c164e6e (diff) | |
download | qpdf-5508f74603d7a816ab67456939bd3ee57676f842.tar.zst |
Allow /P in encryption dictionary to be positive (fixes #382)
Even though this is disallowed by the spec, files like this have been
encountered in the wild.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -1,3 +1,14 @@ +2019-11-09 Jay Berkenbilt <ejb@ql.org> + + * When reading /P from the encryption dictionary, use static_cast + instead of QIntC to convert the value to a signed integer. The + value of /P is a bit field, and PDF files have been found in the + wild where /P is represented as an unsigned integer even though + the spec states that it is a signed 32-bit value. By using + static_cast, we allow qpdf to compensate for writers that + incorrectly represent the correct bit field as an unsigned value. + Fixes #382. + 2019-11-05 Jay Berkenbilt <ejb@ql.org> * Add support for pluggable crypto providers, enabling multiple |