# Connecting to a reven server hostname = "localhost" port = 13370 server = reven2.RevenServer(hostname, port)
You can use a feature of the Workflow API to get a connection to a server from the scenario's name, rather than by specifying a port.
From the CLI:
from reven2.preview.project_manager import ProjectManager pm = ProjectManager("http://localhost:8880") # URL to the REVEN Project Manager connection = pm.connect("cve-2016-7255") # No need to specify "13370" server = connection.server
From a script:
with pm.connect("cve-2016-7255") as server: # TODO: use the server pass
This is useful, as the server port will typically change at each reopening of the scenario, while the scenario name remains the same.
If no server is open for that particular scenario when executing the
ProjectManager.connect method call, then a new one will be started.