reven2.preview.project_manager.project_manager.ProjectManager(object)
class documentationreven2.preview.project_manager.project_manager
(View In Hierarchy)
The project manager class exposes basic methods to manage scenarios, record them, replay them and start a REVEN server to analyse them.
Method | __init__ | Undocumented |
Method | hostname | Property: The hostname of this project manager |
Method | port | Property: The port of this project manager |
Method | get_files_list | Undocumented |
Method | upload_file | Undocumented |
Method | delete_file | Undocumented |
Method | get_tasks_list | Undocumented |
Method | get_active_tasks_list | Undocumented |
Method | get_task | Undocumented |
Method | get_task_log | Undocumented |
Method | cancel_task | Undocumented |
Method | delete_task | Undocumented |
Method | update_qemu_snapshot | Undocumented |
Method | get_snapshot | Undocumented |
Method | get_scenarios_list | Undocumented |
Method | create_scenario | Undocumented |
Method | update_scenario | Undocumented |
Method | delete_scenario | Undocumented |
Method | import_scenario | Undocumented |
Method | export_scenario | Undocumented |
Method | get_sessions_list | Undocumented |
Method | get_session | Undocumented |
Method | get_session_log | Undocumented |
Method | delete_session | Undocumented |
Method | start_qemu_snapshot_session | Undocumented |
Method | load_live_snapshot_qemu_session | Undocumented |
Method | save_live_snapshot_qemu_session | Undocumented |
Method | insert_cdrom_qemu_session | Undocumented |
Method | eject_cdrom_qemu_session | Undocumented |
Method | auto_record_binary | Undocumented |
Method | auto_record_asm_stub | Undocumented |
Method | start_record | Undocumented |
Method | stop_record | Undocumented |
Method | commit_record | Undocumented |
Method | delete_qemu_session_record | Undocumented |
Method | start_vbox_snapshot_session | Undocumented |
Method | insert_cdrom_vbox_session | Undocumented |
Method | eject_cdrom_vbox_session | Undocumented |
Method | stop_session | Undocumented |
Method | get_resources_list | Undocumented |
Method | get_actions_list | Undocumented |
Method | replay_scenario | Undocumented |
Method | get_scenario | Undocumented |
Method | delete_scenario_record | Undocumented |
Method | get_scenario_resources_list | Undocumented |
Method | get_scenario_resource | Undocumented |
Method | delete_scenario_resources | Undocumented |
Method | delete_scenario_resource | Undocumented |
Method | get_scenario_actions_list | Undocumented |
Method | get_scenario_action | Undocumented |
Method | start_reven_session | Undocumented |
Method | connect | Use this method in a `with` pattern to get a `RevenServer` instance connected to the specified scenario name. |
Static Method | _init_url | Undocumented |
Method | _do_request | Undocumented |
Method | _request | Undocumented |
Use this method in a `with` pattern to get a `RevenServer` instance connected to the specified scenario name.
This avoids having to use port numbers to connect to a server.
A new server will be started if there is no server for this scenario. If
ephemeral
is set to True
(the default) and a new
server is started by this call, then disposing of the connection will stop
the server.
>>> # Using the 'with' syntax >>> with pm.connect("ddref") as server: ... print(server.trace.transition_count)
>>> # From the command line, it can be easier to do: >>> connection = Connection(pm, "ddref") >>> server = connection.server >>> print(server.trace.transition_count) >>> connection.disconnect() # to stop the server if we started it
>>> # If you want to keep the server >>> host = None >>> port = None >>> with pm.connect("ddref", ephemeral=False) as server: ... # save the port for later use ... host = server.host ... port = server.port ... # The REVEN server is still accessible here ... server = reven2.RevenServer(host, port) ... print(server.trace.transition_count)