tags:

views:

52

answers:

1

Note: I am not sure if this is better here, or at superuser, but since it concerns the poppler library, I would assume here, because people here are more likely to know how it works.

Software: iPDF 2.12 + Poppler 2.11 (Last commit 2006-12-12) for Irex Iliad. Sources are here.
Problem Documents: Sciam digital PDFs (any of them, since all are produced the same way).

The document will load fine using Okular, Adobe Reader, and XPDF without requesting any passwords, and can be read without problem.
Loading using iPDF - so poppler - requests a password to open the document.
I have tried bypassing the SecurityHandler:checkEncryption method in Poppler/SecurityHandler.cc, by making it return true. This works, but fails to load the pdf with errors:

Error: Unsupported version/revision (4/4) of Standard security handler
Error (13571568): Unknown compression method in flate stream
Error: Top-level pages object is wrong type (null)
Error: Couldn't read page catalog
(PV_E)PDFCore.cpp:61,open() Open PDF document (èÖ@(èÖ@à failed with error code 2
(PV_E)PDFApp.cpp:185,open() Could not open file!

This suggests that the actual stream is encrypted, which - if true - suggests that okular is somehow bypassing this.

I am aware of people having similar problems on other mobile devices (I found a similar report with a Nexus One).

I do not know enough about how the pdf format works to know whether there is some 'default' password that should be used instead to open (no other permissions needed) the document. Is there? Is it a case that it is requesting the owner password, when it only needs to use the user password (blank?) to open it?

Else, does anyone know how something like Okular/XPDF would be able to open it without problem?

A: 

This turned out to be an issue with the version of poppler being used by the application being too old for the required security handler.

As such, I have started my own project to create a new pdf viewer for my iliad based on the latest (0.14.*) version of poppler which can handle it. Sources here.

Ali Lown