Skip to content

It is not possible to directly select the type of filesystem when opening it. #4448

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
agatti opened this issue Jul 15, 2022 · 3 comments · May be fixed by #4711 or coderabbit-test/ghidra#5
Open

It is not possible to directly select the type of filesystem when opening it. #4448

agatti opened this issue Jul 15, 2022 · 3 comments · May be fixed by #4711 or coderabbit-test/ghidra#5
Assignees
Labels
Feature: Filesystem Status: Internal This is being tracked internally by the Ghidra team

Comments

@agatti
Copy link
Contributor

agatti commented Jul 15, 2022

(This sort of crosses the line between bug and feature, though)

Describe the bug
Filesystem providers whose factories do not implement GFileSystemProbeBytesOnly or GFileSystemProbeByteProvider are not considered when opening a filesystem via 'File > Open File System...'.

To Reproduce
Steps to reproduce the behavior:

  1. Create an empty filesystem whose factory implements neither GFileSystemProbeBytesOnly nor GFileSystemProbeByteProvider and make it available to Ghidra.
  2. Open a filesystem via 'File > Open File System...'
  3. An error message says no filesystem provider for the file is available.

Expected behavior
If the probing providers give up, there should be a way to pick a fallback filesystem.

Environment (please complete the following information):

  • OS: macOS
  • Java Version: 11.0.15
  • Ghidra Version: 10.2-DEV at ca60845
  • Ghidra Origin: locally built.

Additional context
In cases where a custom filesystem with no particular header or other identifying characteristics to write a probe for, there is no chance for the filesystem to be traversed even if a filesystem provider is available.

I've written a proto-PR to work around that issue - which I'm having now: agatti@7bf3a0e. I'm willing to clean it up and submit it as a full-fledged PR if it's OK with you folks, but maybe you may have other ideas...

@dev747368 dev747368 added the Status: Triage Information is being gathered label Jul 15, 2022
@dev747368 dev747368 self-assigned this Jul 15, 2022
@dev747368
Copy link
Collaborator

dev747368 commented Jul 15, 2022

seems reasonable, and the PR looks ok. I'll comment in the branch about a few things and we'll go from there.

@ryanmkurtz ryanmkurtz added Status: Prioritize This is currently being prioritized and removed Status: Triage Information is being gathered labels Aug 3, 2022
@dev747368 dev747368 added Status: Internal This is being tracked internally by the Ghidra team and removed Status: Prioritize This is currently being prioritized labels Aug 4, 2022
@agatti agatti linked a pull request Nov 3, 2022 that will close this issue
@ljrk0
Copy link

ljrk0 commented Mar 9, 2023

I currently hit this for virtually all binaries and for the mean time you can archive your binary into a tarball, open it in Ghidra, and then import the binary file from with the tarball as a workaround.

@fr33k3v1n0
Copy link

hello everyone. i have the same problem. when i try to import a binary into ghidra, it say me ' no filesytem provide for this file'. i don't know how to solve it. please someone to help me
Uploading ghidra_error.png…

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature: Filesystem Status: Internal This is being tracked internally by the Ghidra team
Projects
None yet
5 participants