Description
(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:
- Create an empty filesystem whose factory implements neither GFileSystemProbeBytesOnly nor GFileSystemProbeByteProvider and make it available to Ghidra.
- Open a filesystem via 'File > Open File System...'
- 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...