Commit Graph

44 Commits

Author SHA1 Message Date
Michael R Sweet
97d4955666
Fix potential denial-of-service in flate stream code. 2023-03-20 09:27:19 -04:00
Michael R Sweet
57d5894f33
Update pdfioStreamGetToken documentation (Issue #37) 2023-01-11 17:13:58 -05: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
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
6432187dea
Fix sporadic test suite failures caused by greedy whitespace removal in token
reader.

Update read code to handle signal/temporary failures.

Add some more useful debug messages for the encryption code.

Eliminate more warnings from Clang.
2021-10-31 11:12:54 -04:00
Michael R Sweet
8dfc2c6045
Fix LGTM issues. 2021-10-25 21:43:32 -04:00
Michael R Sweet
e2b33a6cbb
Merge branch 'master' into crypto 2021-10-25 21:25:12 -04:00
Michael R Sweet
790cd440ea
Fix up copying objects from unencrypted to AES-encrypted documents (still looks
like there are some issues with strings in dicts)
2021-10-25 21:22:59 -04:00
Michael R Sweet
234c3a7381
Do some reorganization and start the implementation of decryption. 2021-10-24 10:59:25 -04:00
Michael R Sweet
b7ecaeee07
Implement partial write buffering for AES. 2021-10-23 20:33:12 -04:00
Michael R Sweet
3af39d5d1f
Update crypto callback to return the number of output bytes (to account for AES
expansion).
2021-10-23 14:37:25 -04:00
Michael R Sweet
095a4c10d4 Fix some memory leaks (Issue #23) 2021-10-16 00:02:31 -04:00
Michael R Sweet
c24243a2bc
Refactor crypto callback to have separate input/output pointers. Add initial writing support. 2021-10-12 09:13:30 -04:00
Michael R Sweet
d6746c08a4
Add pdfioFileCreateOutput API (Issue #21) 2021-09-27 07:41:50 -04:00
Michael R Sweet
6aa5585eb4
Fix some compressed stream bugs. 2021-08-30 10:55:45 -04:00
Michael R Sweet
e83fdf14dd
Add zstrerror for ZLIB errors. 2021-08-25 09:30:03 -04:00
Michael R Sweet
6745f785b7
Fix bug with xref stream with no index.
Fix bug with pdfiOStreamPeek not appending new stream data to buffer.

Add more debug printfs for values.
2021-08-24 13:50:57 -04:00
Michael R Sweet
3e4b01239e
Implement TIFF predicator (Issue #12) 2021-08-21 22:51:25 -04:00
Michael R Sweet
3844abdf92
Fix reading of streams with indirect lengths. 2021-06-21 16:18:06 -04:00
Michael R Sweet
01ca711ec8
Add decode testing to testpdfio 2021-06-21 16:03:05 -04:00
Michael R Sweet
6f02bdd301 Initial Visual Studio support. 2021-06-21 11:39:06 -04:00
Michael R Sweet
e9d5e082af
Save work on Unicode font support - still something isn't quite right. 2021-06-21 07:58:23 -04:00
Michael R Sweet
466cb473d1
Fix _pdfioFileRead/Seek to fix test suite-reported error loading an object. 2021-06-10 10:58:07 -04:00
Michael R Sweet
ee5fcc2a4a
Fix Coverity-discovered issues. 2021-06-04 10:56:23 -04:00
Michael R Sweet
caf398d72c
Add pdfioImageGetBytesPerLine API, document its use for image streams. 2021-06-04 10:33:39 -04:00
Michael R Sweet
3c034eb919
Fix remaining PNG predictors. 2021-06-01 19:29:48 -04:00
Michael R Sweet
3efb4f800b
Fix PNG predictor 12, 14, and 15. 2021-06-01 17:48:36 -04:00
Michael R Sweet
2856b440d1
Add PNG predictor test page (yes, we have problems) 2021-06-01 17:10:36 -04:00
Michael R Sweet
246c2e4b41
Rename as PDFio for consistency.
Add PDFio logo image.

Move documentation to "doc" subdirectory.
2021-05-30 07:10:44 -04:00
Michael R Sweet
35d22705fa
Implement pdfioObjCopy and pdfioPageCopy, with tests. 2021-05-29 20:00:48 -04:00
Michael R Sweet
548ff7d119
Initial writing support. 2021-05-16 11:39:05 -04:00
Michael R Sweet
7cb4d0a557
Update TODOs. 2021-05-10 21:33:26 -04:00
Michael R Sweet
4e4c47ab33
Add pdfioObjGetLength function. 2021-05-08 19:16:27 -04:00
Michael R Sweet
f8f048b87a
Implement Paeth predictor. 2021-05-08 19:04:42 -04:00
Michael R Sweet
9a919d478f
Rework token reading to be separate from the PDF file so we can add support
for compressed object streams.
2021-05-08 07:38:44 -04:00
Michael R Sweet
923409ceff
Save work on PNG predictors. Apparently object streams are also a common thing
for newer Acrobat so we'll need to implement those, too.
2021-05-07 19:51:38 -04:00
Michael R Sweet
44325ce2d9
Safe work on streams - still need to implement predictors 2021-05-07 08:47:49 -04:00
Michael R Sweet
c61d6ad686
Save work on streams. 2021-05-06 16:08:08 -04:00
Michael R Sweet
4b05ca6436
Token parsing code. 2021-05-01 22:38:11 -04:00
Michael R Sweet
e107b94c83
Work on token parsing. 2021-05-01 17:50:52 -04:00
Michael R Sweet
3a80327646
Stub stream implementations. 2021-04-30 07:06:56 -04:00
Michael R Sweet
11588ce2f5
Save work on low-level file I/O. 2021-04-26 10:42:01 -04:00
Michael R Sweet
899feb15c7
Start filling out internal APIs. 2021-04-16 21:09:43 -04:00
Michael R Sweet
c2610f2dd0
Fill out basic API functions. 2021-04-16 20:41:46 -04:00