Code Monkey home page Code Monkey logo

Comments (7)

apyrgio avatar apyrgio commented on August 13, 2024

Probably similar to #749. I see that your OS is Windows, which means that this problem is not contained to Fedora 39 Silverblue, as we originally assumed. We need to debug further.

Out of curiosity, does this happen with every file that you try to sanitize?

from dangerzone.

zyberzebra avatar zyberzebra commented on August 13, 2024

Yes. You need some errorlogs?

from dangerzone.

apyrgio avatar apyrgio commented on August 13, 2024

Dang. Even with very simple ones, like this: https://github.com/freedomofpress/dangerzone/raw/main/tests/test_docs/sample-doc.doc?

You need some errorlogs?

Sure, if you can run dangerzone-cli in Windows, and copy its output, that would help. You should be able to find it under "Program files" -> "Dangerzone".

from dangerzone.

zyberzebra avatar zyberzebra commented on August 13, 2024

The Simple one worked:

[doc x0jORC] 0% Converting page 1/3 to pixels
[doc x0jORC] 16% Converting page 2/3 to pixels
[doc x0jORC] 32% Converting page 3/3 to pixels
[doc x0jORC] 49% Converted document to pixels
> 'C:\Program Files\Docker\Docker\resources\bin\docker.EXE' run --network none -u dangerzone --security-opt=no-new-privileges:true --cap-drop all --rm -i -v 'C:\Users\user\AppData\Local\Temp\tmppf1tmu4d:/safezone:Z' -e OCR=0 -e OCR_LANGUAGE=None dangerzone.rocks/dangerzone /usr/bin/python3 -m dangerzone.conversion.pixels_to_pdf
[doc x0jORC] 50% Converting page 1/3 from pixels to PDF
[doc x0jORC] 65% Converting page 2/3 from pixels to PDF
[doc x0jORC] 80% Converting page 3/3 from pixels to PDF
[doc x0jORC] 100% Safe PDF created

Safe PDF(s) created successfully

Thats the output on my pdf

[doc i1G6FA] 49% Converted document to pixels
ERROR An exception occurred while converting document 'i1G6FA'
Traceback (most recent call last):
  File "C:\Users\dz\dangerzone\dangerzone\isolation_provider\base.py", line 76, in convert
  File "C:\Users\dz\AppData\Local\Programs\Python\Python311\Lib\subprocess.py", line 1264, in wait
  File "C:\Users\dz\AppData\Local\Programs\Python\Python311\Lib\subprocess.py", line 1591, in _wait
subprocess.TimeoutExpired: Command '['C:\\Program Files\\Docker\\Docker\\resources\\bin\\docker.EXE', 'run', '--network', 'none', '-u', 'dangerzone', '--security-opt=no-new-privileges:true', '--cap-drop', 'all', '--rm', '-i', 'dangerzone.rocks/dangerzone', '/usr/bin/python3', '-m', 'dangerzone.conversion.doc_to_pixels']' timed out after 3 seconds
ERROR [doc i1G6FA] 0% Command '['C:\\Program Files\\Docker\\Docker\\resources\\bin\\docker.EXE', 'run', '--network', 'none', '-u', 'dangerzone', '--security-opt=no-new-privileges:true', '--cap-drop', 'all', '--rm', '-i', 'dangerzone.rocks/dangerzone', '/usr/bin/python3', '-m', 'dangerzone.conversion.doc_to_pixels']' timed out after 3 seconds

Failed to convert document(s)

from dangerzone.

banerian avatar banerian commented on August 13, 2024

i have had this problem, and by editing
dangerzone/isolation_provider/base.py

line 76 conversion_proc.wait(3) to '10' conversion worked.
I guess I should submit a MR to make this timeout something in settings?

from dangerzone.

apyrgio avatar apyrgio commented on August 13, 2024

@banerian Thanks a lot for this extra info. This shows that whatever is blocking the container from quitting, does not stay on indefinitely. However, the proper fix here is to find out what's the blocker in the first place. Waiting for an arbitrary number of seconds during each conversion will not cut it, I'm afraid.

I have some questions, if you have some time:

  1. What is your OS and Dangerzone version?

  2. Can you convert a simple document with no errors, or does that fail as well?

  3. Can you give us any specifics about the documents that you are converting and you hit this error?

    • Think document type (.pdf, .doc, etc.), number of pages, if they come from a particular source, etc.
    • Even better, if you can share a ⚠️ non-sensitive ⚠️ document with us that triggers this error, that would be amazing. You can hit me up at [email protected], if you don't want to share something publicly.
  4. Since you can edit the Dangerzone source, could you make the following change in the dangerzone/isolation_provider/container.py file, run dangerzone-cli, and send us its output?

    diff --git a/dangerzone/isolation_provider/container.py b/dangerzone/isolation_provider/container.py
    index cbadcc3..6553677 100644
    --- a/dangerzone/isolation_provider/container.py
    +++ b/dangerzone/isolation_provider/container.py
    @@ -165,7 +165,7 @@ class Container(IsolationProvider):
                 args,
                 stdin=subprocess.PIPE,
                 stdout=subprocess.PIPE,
    -            stderr=self.proc_stderr,
    +            #stderr=self.proc_stderr,
                 startupinfo=startupinfo,
             )

(the above applies to anyone affected by this issue, thanks in advance)

from dangerzone.

apyrgio avatar apyrgio commented on August 13, 2024

Actually, I'll ping you in another issue (#749 (comment)), since this is one is a duplicate, and we can continue the discussion there.

from dangerzone.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.