Skip to content

Changing ReOxide default paths

The different components of ReOxide use some hard-coded default paths. You can either change these with command line switches, where applicable, or use environment variables. Where command line switches exist, they take precedence over environment variables.

User configuration and data directory

Per default, reoxide and the reoxided daemon look for a configuration file at ~/.config/reoxide/reoxide.toml. You can use the -c command line option or set the REOXIDE_CONFIG variable.

The reoxide and reoxided programs also assume the data directory, that has the pipeline definitions and plugins, at the default path ~/.local/share/reoxide/. Because every tool that needs to read the data directory also reads the configuration file, you do not specify the data directory as switch or environment variable, but in reoxide.toml:

toml
data-directory = "/home/user/.local/share/reoxide"

Daemon communication sockets

The reoxided daemon controls two communication sockets: One for the decompilers to fetch pipeline information and share data and one for other tools to configure the pipelines. We call the first one the socket and the second one the management socket. The configuration for these varies depending on if configure the daemon or client programs. For reoxided you have the following options:

  • -c switch or REOXIDE_BIND: Binds the default zmq socket to a zmq URL with the default URL ipc:///tmp/reoxide.sock.
  • -m switch or REOXIDE_MANAGE_BIND: Binds the management socket to a zmq URL with the default URL ipc:///tmp/reoxide-manage.sock

For client programs connecting to reoxided sockets, you can use the following environment variables:

  • REOXIDE_HOST: Specifies the default socket zmq URL with the default URL ipc:///tmp/reoxide.sock.
  • REOXIDE_MANAGE_HOST: Specifies the default management socket zmq URL with the default URL ipc:///tmp/reoxide-manage.sock.

Log file configuration for decompilers

Running decompilers powered by ReOxide write a log file. ReOxide writes this log file in the working directory of the decompiler per default. Especially when running the decompiler through the Ghidra interface, you might not know where it writes the file. You can configure the location by setting the REOXIDE_LOGFILE environment variable.