Commit Graph

144 Commits

Author SHA1 Message Date
Michael R Sweet
c992b2ba89 Update the token reading code to protect against obvious format abuses.
Update the xref loading code to protect against looping xref tables.
2023-12-07 17:50:52 -05:00
Michael R Sweet
16c8b830b8 Add pdfioFileCreateNumber/StringObj functions (Issue #14) 2023-12-05 08:16:41 -05:00
Michael R Sweet
7ff051fc8b Add pdfioContentTextNewLineShow/f functions (Issue #24) 2023-12-05 07:49:49 -05:00
Michael R Sweet
927452d1eb Changelog and exports updates. 2023-12-04 21:22:13 -05:00
Michael R Sweet
41146adbdf Adopt autoconf (Issue #54) 2023-12-03 19:16:34 -05:00
Michael R Sweet
cd80c3037d Prep for 1.1.4 release. 2023-12-03 16:55:57 -05:00
Michael R Sweet
97934ab995 Add ToUnicode map. 2023-11-19 20:49:30 -05:00
Michael R Sweet
088646e1cf Drop the FEFF prefix on Unicode strings. 2023-11-19 07:30:17 -05:00
Michael R Sweet
d36df63b57 Fix a TrueType CMAP decoding bug and add a NotoSans-Regular test page. 2023-11-18 22:15:52 -05:00
Michael R Sweet
0258384d53 Range check encrypted string length (Issue #52) 2023-11-18 18:22:11 -05:00
Michael R Sweet
9fec2195d0 Update changelog. 2023-11-15 10:14:02 -05:00
Michael R Sweet
4804db38a5 Fix missing ivlen initializer for 40-bit RC4 (Issue #51) 2023-11-15 08:43:07 -05:00
Michael R Sweet
600fa4ce59 Fix Unicode font handling (Issue #16) 2023-11-14 18:19:34 -05:00
Michael R Sweet
43114f43bf Bump version. 2023-10-10 10:22:27 -04:00
Michael R Sweet
2e91e05d7b Allow "compound" filters that consist of a single named filter (Issue #47) 2023-10-10 07:14:12 -04:00
Michael R Sweet
b0a66eef78 Fix reading of PDF files from Crystal Reports (Issue #45) 2023-10-09 10:04:20 -04:00
Michael R Sweet
19c45871fa Update pdfioContentSetDashPattern to support setting solid line styles (Issue #41) 2023-10-06 15:47:27 -04:00
Michael R Sweet
7f6ffcda22 Fix a couple issues with parsing PDF files produced by Microsoft Reporting
Services (Issue #46)

- Odd cross-reference stream containing 3-byte generation number field for this
  16-bit value
- Odd empty hex strings
2023-10-06 10:46:30 -04:00
Michael R Sweet
a83f7f50ff Allow extra whitespace/newlines after stream tokens (Issue #40) 2023-10-02 05:06:33 -04:00
Michael R Sweet
35c674b633 Fix another build issue. 2023-03-20 10:11:05 -04:00
Michael R Sweet
97d4955666 Fix potential denial-of-service in flate stream code. 2023-03-20 09:27:19 -04:00
Michael R Sweet
e138232a93 Fix build error due to mismatched function declarations. 2023-03-20 08:19:31 -04:00
Michael R Sweet
8d8225f4a1 Fix release date. 2023-02-07 17:10:48 -05:00
Michael R Sweet
7045d9dad9 Bump Windows version numbers and update exports file. 2023-02-06 17:36:54 -05:00
Michael R Sweet
4f10021e7e Fix denial-of-service attack when reading corrupt PDF files. 2023-02-03 20:39:04 -05:00
Michael R Sweet
57d5894f33 Update pdfioStreamGetToken documentation (Issue #37) 2023-01-11 17:13:58 -05:00
Michael R Sweet
a3f3bbfe11 Fix pdfioFileGetAuthor, etc. APIs (Issue #33) 2022-07-12 18:36:08 -04:00
Michael R Sweet
067683cbcd Add some protection against opening multiple streams in the same file at the same time. 2022-07-04 13:03:11 -04:00
Michael R Sweet
ae9a91719b Add pdfioContentPathEnd function. 2022-07-03 10:01:10 -04:00
Michael R Sweet
1a17933635 Fix pdfioContentMatrixRotate function. 2022-07-01 20:30:40 -04:00
Michael R Sweet
acea6fdbed Changelog. 2022-06-27 17:17:44 -04:00
Michael R Sweet
f4b8983c61 Implement pdfioDictIterateKeys API (Issue #31) 2022-06-27 10:17:00 -04:00
Michael R Sweet
316b0ad559 Add pdfioFileCreateTemporary function (Issue #29) 2022-05-15 22:52:53 -04:00
Michael R Sweet
cedd7d104f Changelog update. 2022-03-02 09:47:14 -05:00
Michael R Sweet
f7f2969e3a Fix pdfioStreamGetToken implementation (wasn't flushing input), update
pdfiototext code to better handle different text operators that affect the
location of the text.
2022-03-01 09:18:56 -05:00
Michael R Sweet
93a3fcea6c Add missing pdfioPageGetNumStreams and pdfioPageOpenStream functions.
Add initial version of pdfiototext text extraction utility.
2022-02-28 15:00:25 -05:00
Michael R Sweet
bd2f9d44d4 Prep for 1.0.0 release. 2021-12-14 12:36:33 -05:00
Michael R Sweet
a431d7806f Fix a few stack/buffer overflow bugs discovered by Bart, Steffan, and Mark from
the Radboud University NL (thanks!)

- Add depth argument to all value read functions that recurse
- Add depth argument to page tree loading code
- Validate xref stream sizes individually to avoid out-of-bounds access to local
  xref buffer.
2021-11-29 17:46:56 -05:00
Michael R Sweet
c53786e0e1 Changelog. 2021-11-07 11:29:18 -05:00
Michael R Sweet
1d5310a5f3 Bump version to 1.0b2. 2021-11-07 11:15:35 -05:00
Michael R Sweet
22c245ffd1 Update pdfioContentSetDashPattern to accept doubles (Issue #25) 2021-10-16 09:41:19 -04:00
Michael R Sweet
095a4c10d4 Fix some memory leaks (Issue #23) 2021-10-16 00:02:31 -04:00
Michael R Sweet
d1e8c966ed Fix some Coverity-detected issues. 2021-10-01 11:38:04 -04:00
Michael R Sweet
7473bc3cd9 Add some supporting documentation files. 2021-09-27 07:42:19 -04:00