From 533abc69936996be0cb333f730a9ed531d2d77d9 Mon Sep 17 00:00:00 2001 From: Katharina Fey Date: Wed, 18 Mar 2020 22:13:03 +0100 Subject: Adding a wire layer --- src/wire/action.rs | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 src/wire/action.rs (limited to 'src/wire/action.rs') diff --git a/src/wire/action.rs b/src/wire/action.rs new file mode 100644 index 000000000000..8b25e58649ba --- /dev/null +++ b/src/wire/action.rs @@ -0,0 +1,33 @@ +use crate::data::{NodeId, Upgrade}; +use serde::{Serialize, Deserialize}; + +/// All actions that a user can trigger via the UI +#[derive(Serialize, Deserialize)] +pub enum Action { + /// Cancel the running action + Cancel(NodeId), + /// Start a capture action + Capture { from: NodeId, to: NodeId }, + /// Set the compute targets + Compute { from: NodeId, to: Vec }, + /// Set to payload analysis mode + Payload(NodeId), + /// Send an exploit across the network + Reset { + from: NodeId, + to: NodeId, + exp: Exploit, + }, + /// Try to upgrade the node to a level + Upgrade { node: NodeId, level: Upgrade }, +} + +/// A type of exploit a node can start running +#[derive(Serialize, Deserialize)] +pub enum Exploit { + Reset, + CNS, + Nitm, + Virus, + TakeOver, +} -- cgit v1.2.3