NationalSecurityAgency / ghidra

Ghidra is a software reverse engineering (SRE) framework
https://www.nsa.gov/ghidra
Apache License 2.0
50.53k stars 5.78k forks source link

API Help doesn't do anything #6839

Open mumbel opened 3 weeks ago

mumbel commented 3 weeks ago

Describe the bug Click on help button in plugin manager or help->Ghidra API help in code browser do not do anything. This is the first in 11.1.2 i've looked at api docs, it unzips to who knows and that was it. Doesn't open anything and further clicks do nothing.

Expected behavior either button or menu item opens file:/// link in browser

Environment (please complete the following information): Ghidra Version: 11.1.2 Ghidra Release: PUBLIC Ghidra Build Date: 2024-Jul-09 1157 EDT Ghidra Revision: 68cad06ddfae2b92c03054357c67c32f2d0553a8 Ghidra Development Mode: false OS Name: Linux OS Arch: amd64 OS Version: 6.8.0-40-generic OS Pretty Name: Ubuntu 22.04.4 LTS Java Vendor: Ubuntu Java Version: 21.0.4

Additional context Add any other context about the problem here.

ryanmkurtz commented 3 weeks ago

Are you using the Firefox snap installation?

ryanmkurtz commented 3 weeks ago

4306?

mumbel commented 3 weeks ago

Ill double check if there are any logs related to ff or snap or if it reacts differently if ff is open, but I use chrome (.deb) as my default browser (and had chrome open)

mumbel commented 3 weeks ago

i think the snap were annoying me and looks like I uninstalled firefox. I have chromium-browser and google-chrome

https://github.com/NationalSecurityAgency/ghidra/blob/6a94f1f7ab21e58e934bb3117d2c1085cfc18604/Ghidra/Features/Base/src/main/java/ghidra/util/ManualViewerCommandWrappedOption.java#L126

something like this maybe: java.awt.Desktop.getDesktop().browse(uri)

ryanmkurtz commented 3 weeks ago

something like this maybe: java.awt.Desktop.getDesktop().browse(uri)

Thanks, i'll give this a try on our various platforms.

ryanmkurtz commented 3 weeks ago

I guess to fix this in your current installation you can go to Edit -> Tool Options -> Processor Manuals and change the Command String value. If that works we need to at the very least:

mumbel commented 3 weeks ago

Ah thanks! I didn't know that was exposed like that

ryanmkurtz commented 3 weeks ago

something like this maybe: java.awt.Desktop.getDesktop().browse(uri)

Thanks, i'll give this a try on our various platforms.

Hmmm, I tried Desktop.getDesktop().browse() and got java.lang.UnsupportedOperationException: The BROWSE action is not supported on the current platform on Ubuntu 24.04.

mumbel commented 3 weeks ago

Ah, I guess I got lucky, on 22.04/jdk17 , thats all I had tried it on

Desktop.getDesktop().isSupported(Desktop.Action.BROWSE)