pub struct BridgeController;Implementations§
Source§impl BridgeController
impl BridgeController
Sourcepub fn check() -> Result<(String, Vec<String>), Box<dyn Error>>
pub fn check() -> Result<(String, Vec<String>), Box<dyn Error>>
Examples found in repository?
examples/basic.rs (line 6)
3fn main() -> Result<(), CommandError> {
4 env_logger::init();
5
6 match BridgeController::check() {
7 Ok((brctl_version, interfaces)) => {
8 println!("brctl version: {}", brctl_version);
9 println!("Interfaces: {:?}", interfaces);
10
11 println!("The system is ready for bridge operations!")
12 }
13 Err(e) => eprintln!("The system is not ready for bridge operations: {}", e),
14 }
15
16 println!();
17
18 if let Some(mybridge) = BridgeController::get_bridge("mybridge")? {
19 mybridge.delete()?;
20 }
21
22 let mybridge = BridgeController::create_bridge("mybridge")?;
23
24 mybridge.add_interface("enp9s0")?;
25
26 let bridges = BridgeController::list_bridges()?;
27 println!("Available bridges:");
28 for b in bridges {
29 println!(" - {}", b);
30 }
31
32 println!();
33
34 println!("{}:", mybridge.get_name());
35 println!(" Interfaces:");
36 for i in mybridge.get_interfaces()? {
37 println!(" - {}", i);
38 }
39
40 println!(" ID: {}", mybridge.get_id()?);
41 println!(" STP: {}", mybridge.get_stp()?);
42
43 println!();
44
45 let mybridge = BridgeController::get_bridge("mybridge")?;
46 assert!(mybridge.is_some(), "Bridge not found");
47 mybridge.expect("Bridge not found").delete()?;
48
49 let mybridge = BridgeController::get_bridge("mybridge")?;
50 assert!(mybridge.is_none(), "Bridge not deleted");
51
52 println!("Bridge deleted successfully");
53 Ok(())
54}Sourcepub fn create_bridge(name: &str) -> Result<Bridge, CommandError>
pub fn create_bridge(name: &str) -> Result<Bridge, CommandError>
Examples found in repository?
examples/basic.rs (line 22)
3fn main() -> Result<(), CommandError> {
4 env_logger::init();
5
6 match BridgeController::check() {
7 Ok((brctl_version, interfaces)) => {
8 println!("brctl version: {}", brctl_version);
9 println!("Interfaces: {:?}", interfaces);
10
11 println!("The system is ready for bridge operations!")
12 }
13 Err(e) => eprintln!("The system is not ready for bridge operations: {}", e),
14 }
15
16 println!();
17
18 if let Some(mybridge) = BridgeController::get_bridge("mybridge")? {
19 mybridge.delete()?;
20 }
21
22 let mybridge = BridgeController::create_bridge("mybridge")?;
23
24 mybridge.add_interface("enp9s0")?;
25
26 let bridges = BridgeController::list_bridges()?;
27 println!("Available bridges:");
28 for b in bridges {
29 println!(" - {}", b);
30 }
31
32 println!();
33
34 println!("{}:", mybridge.get_name());
35 println!(" Interfaces:");
36 for i in mybridge.get_interfaces()? {
37 println!(" - {}", i);
38 }
39
40 println!(" ID: {}", mybridge.get_id()?);
41 println!(" STP: {}", mybridge.get_stp()?);
42
43 println!();
44
45 let mybridge = BridgeController::get_bridge("mybridge")?;
46 assert!(mybridge.is_some(), "Bridge not found");
47 mybridge.expect("Bridge not found").delete()?;
48
49 let mybridge = BridgeController::get_bridge("mybridge")?;
50 assert!(mybridge.is_none(), "Bridge not deleted");
51
52 println!("Bridge deleted successfully");
53 Ok(())
54}pub fn delete_bridge(name: &str) -> Result<(), CommandError>
Sourcepub fn list_bridges() -> Result<Vec<Bridge>, CommandError>
pub fn list_bridges() -> Result<Vec<Bridge>, CommandError>
Examples found in repository?
examples/basic.rs (line 26)
3fn main() -> Result<(), CommandError> {
4 env_logger::init();
5
6 match BridgeController::check() {
7 Ok((brctl_version, interfaces)) => {
8 println!("brctl version: {}", brctl_version);
9 println!("Interfaces: {:?}", interfaces);
10
11 println!("The system is ready for bridge operations!")
12 }
13 Err(e) => eprintln!("The system is not ready for bridge operations: {}", e),
14 }
15
16 println!();
17
18 if let Some(mybridge) = BridgeController::get_bridge("mybridge")? {
19 mybridge.delete()?;
20 }
21
22 let mybridge = BridgeController::create_bridge("mybridge")?;
23
24 mybridge.add_interface("enp9s0")?;
25
26 let bridges = BridgeController::list_bridges()?;
27 println!("Available bridges:");
28 for b in bridges {
29 println!(" - {}", b);
30 }
31
32 println!();
33
34 println!("{}:", mybridge.get_name());
35 println!(" Interfaces:");
36 for i in mybridge.get_interfaces()? {
37 println!(" - {}", i);
38 }
39
40 println!(" ID: {}", mybridge.get_id()?);
41 println!(" STP: {}", mybridge.get_stp()?);
42
43 println!();
44
45 let mybridge = BridgeController::get_bridge("mybridge")?;
46 assert!(mybridge.is_some(), "Bridge not found");
47 mybridge.expect("Bridge not found").delete()?;
48
49 let mybridge = BridgeController::get_bridge("mybridge")?;
50 assert!(mybridge.is_none(), "Bridge not deleted");
51
52 println!("Bridge deleted successfully");
53 Ok(())
54}Sourcepub fn get_bridge(name: &str) -> Result<Option<Bridge>, CommandError>
pub fn get_bridge(name: &str) -> Result<Option<Bridge>, CommandError>
Examples found in repository?
examples/basic.rs (line 18)
3fn main() -> Result<(), CommandError> {
4 env_logger::init();
5
6 match BridgeController::check() {
7 Ok((brctl_version, interfaces)) => {
8 println!("brctl version: {}", brctl_version);
9 println!("Interfaces: {:?}", interfaces);
10
11 println!("The system is ready for bridge operations!")
12 }
13 Err(e) => eprintln!("The system is not ready for bridge operations: {}", e),
14 }
15
16 println!();
17
18 if let Some(mybridge) = BridgeController::get_bridge("mybridge")? {
19 mybridge.delete()?;
20 }
21
22 let mybridge = BridgeController::create_bridge("mybridge")?;
23
24 mybridge.add_interface("enp9s0")?;
25
26 let bridges = BridgeController::list_bridges()?;
27 println!("Available bridges:");
28 for b in bridges {
29 println!(" - {}", b);
30 }
31
32 println!();
33
34 println!("{}:", mybridge.get_name());
35 println!(" Interfaces:");
36 for i in mybridge.get_interfaces()? {
37 println!(" - {}", i);
38 }
39
40 println!(" ID: {}", mybridge.get_id()?);
41 println!(" STP: {}", mybridge.get_stp()?);
42
43 println!();
44
45 let mybridge = BridgeController::get_bridge("mybridge")?;
46 assert!(mybridge.is_some(), "Bridge not found");
47 mybridge.expect("Bridge not found").delete()?;
48
49 let mybridge = BridgeController::get_bridge("mybridge")?;
50 assert!(mybridge.is_none(), "Bridge not deleted");
51
52 println!("Bridge deleted successfully");
53 Ok(())
54}