Merge pull request #6 from TNkemdilim/hotfix/minor-cleanup

Chore(Cleanup): Resolve Warnings
This commit is contained in:
Tochukwu Nkemdilim
2020-11-29 17:29:37 +01:00
committed by GitHub
8 changed files with 73 additions and 75 deletions
+38 -35
View File
@@ -2,53 +2,56 @@ mod providers;
use self::providers::prelude::HotspotConfig;
use crate::platforms::{WifiError, WifiInterface};
use std::{fmt, io};
use std::fmt;
/// Error that might occur when interacting managing wireless hotspot.
#[derive(Debug)]
pub enum WifiHotspotError {
/// Failed to ceate wireless hotspot.
CreationFailed,
/// Failed to stop wireless hotspot service. Try turning off
/// the wireless interface via ```wifi.turn_off()```.
FailedToStop(io::Error),
/// A wireless interface error occurred.
Other { kind: WifiError },
/// Failed to ceate wireless hotspot.
#[cfg(target_os = "linux")]
#[cfg(target_os = "windows")]
CreationFailed,
/// Failed to stop wireless hotspot service. Try turning off
/// the wireless interface via ```wifi.turn_off()```.
#[cfg(target_os = "linux")]
FailedToStop(std::io::Error),
/// A wireless interface error occurred.
Other { kind: WifiError },
}
/// Wireless hotspot functionality for a wifi interface.
pub trait WifiHotspot: fmt::Debug + WifiInterface {
/// Creates wireless hotspot service for host machine. This only creates the wifi network,
/// and isn't responsible for initiating the serving of the wifi network process.
/// To begin serving the hotspot, use ```start_hotspot()```.
fn create_hotspot(
&mut self,
ssid: &str,
password: &str,
configuration: Option<&HotspotConfig>,
) -> Result<bool, WifiHotspotError> {
let _a = ssid;
let _b = password;
let _c = configuration;
/// Creates wireless hotspot service for host machine. This only creates the wifi network,
/// and isn't responsible for initiating the serving of the wifi network process.
/// To begin serving the hotspot, use ```start_hotspot()```.
fn create_hotspot(
&mut self,
ssid: &str,
password: &str,
configuration: Option<&HotspotConfig>,
) -> Result<bool, WifiHotspotError> {
let _a = ssid;
let _b = password;
let _c = configuration;
unimplemented!();
}
unimplemented!();
}
/// Start serving publicly an already created wireless hotspot.
fn start_hotspot() -> Result<bool, WifiHotspotError> {
unimplemented!();
}
/// Start serving publicly an already created wireless hotspot.
fn start_hotspot() -> Result<bool, WifiHotspotError> {
unimplemented!();
}
/// Stop serving a wireless network.
///
/// **NOTE: All users connected will automatically be disconnected.**
fn stop_hotspot(&mut self) -> Result<bool, WifiHotspotError> {
unimplemented!();
}
/// Stop serving a wireless network.
///
/// **NOTE: All users connected will automatically be disconnected.**
fn stop_hotspot(&mut self) -> Result<bool, WifiHotspotError> {
unimplemented!();
}
}
impl From<WifiError> for WifiHotspotError {
fn from(error: WifiError) -> Self {
WifiHotspotError::Other { kind: error }
}
fn from(error: WifiError) -> Self {
WifiHotspotError::Other { kind: error }
}
}
-1
View File
@@ -26,7 +26,6 @@ pub enum HotspotBand {
Bg,
}
#[allow(dead_code)]
#[derive(Debug, Clone, Copy)]
/// Channel to broadcast wireless hotspot on.
pub enum Channel {
+6 -6
View File
@@ -8,10 +8,10 @@ mod linux;
mod osx;
pub mod prelude {
#[cfg(target_os = "linux")]
pub use super::linux::*;
#[cfg(target_os = "macos")]
pub use super::osx::*;
#[cfg(target_os = "windows")]
pub use super::windows::*;
#[cfg(target_os = "linux")]
pub use super::linux::*;
#[cfg(target_os = "macos")]
pub use super::osx::*;
#[cfg(target_os = "windows")]
pub use super::windows::*;
}
+2 -3
View File
@@ -1,9 +1,8 @@
use hotspot::{WifiHotspot, WifiHotspotError};
use connectivity::{Connectivity, WifiConnectionError};
use hotspot::WifiHotspot;
use platforms::WiFi;
use std::process::Command;
/// Configuration for a wireless hotspot.
#[allow(dead_code)]
pub struct HotspotConfig {}
/// Wireless hotspot functionality for a wifi interface.
+2 -2
View File
@@ -42,7 +42,7 @@ impl WifiInterface for Linux {
/// Turn on the wireless network adapter.
fn turn_on() -> Result<(), WifiError> {
let _output = Command::new("nmcli")
Command::new("nmcli")
.args(&["radio", "wifi", "on"])
.output()
.map_err(|err| WifiError::IoError(err))?;
@@ -52,7 +52,7 @@ impl WifiInterface for Linux {
/// Turn off the wireless network adapter.
fn turn_off() -> Result<(), WifiError> {
let _output = Command::new("nmcli")
Command::new("nmcli")
.args(&["radio", "wifi", "off"])
.output()
.map_err(|err| WifiError::IoError(err))?;
+21 -21
View File
@@ -17,36 +17,36 @@ use std::{fmt, io};
/// Configuration for a wifi network.
#[derive(Debug, Clone)]
pub struct Config<'a> {
/// The interface the wifi module is situated.
pub interface: Option<&'a str>,
/// The interface the wifi module is situated.
pub interface: Option<&'a str>,
}
#[derive(Debug)]
pub enum WifiError {
// The specified wifi is currently disabled. Try switching it on.
WifiDisabled,
/// The wifi interface interface failed to switch on.
#[cfg(target_os = "windows")]
InterfaceFailedToOn,
/// IO Error occurred.
IoError(io::Error),
// The specified wifi is currently disabled. Try switching it on.
WifiDisabled,
/// The wifi interface interface failed to switch on.
#[cfg(target_os = "windows")]
InterfaceFailedToOn,
/// IO Error occurred.
IoError(io::Error),
}
/// Wifi interface for an operating system.
/// This provides basic functionalities for wifi interface.
pub trait WifiInterface: fmt::Debug {
/// Check if the wifi interface on host machine is enabled.
fn is_wifi_enabled() -> Result<bool, WifiError> {
unimplemented!();
}
/// Check if the wifi interface on host machine is enabled.
fn is_wifi_enabled() -> Result<bool, WifiError> {
unimplemented!();
}
/// Turn on the wifi interface of host machine.
fn turn_on() -> Result<(), WifiError> {
unimplemented!();
}
/// Turn on the wifi interface of host machine.
fn turn_on() -> Result<(), WifiError> {
unimplemented!();
}
/// Turn off the wifi interface of host machine.
fn turn_off() -> Result<(), WifiError> {
unimplemented!();
}
/// Turn off the wifi interface of host machine.
fn turn_off() -> Result<(), WifiError> {
unimplemented!();
}
}
+3 -6
View File
@@ -33,15 +33,12 @@ impl WifiInterface for Osx {
.output()
.map_err(|err| WifiError::IoError(err))?;
Ok(String::from_utf8_lossy(&output.stdout)
.replace(" ", "")
.replace("\n", "")
.contains("enabled"))
Ok(String::from_utf8_lossy(&output.stdout).contains("enabled"))
}
/// Turn on the wireless network adapter.
fn turn_on() -> Result<(), WifiError> {
let output = Command::new("networksetup")
Command::new("networksetup")
.args(&["-setairportpower", "en0", "on"])
.output()
.map_err(|err| WifiError::IoError(err))?;
@@ -51,7 +48,7 @@ impl WifiInterface for Osx {
/// Turn off the wireless adapter.
fn turn_off() -> Result<(), WifiError> {
let output = Command::new("networksetup")
Command::new("networksetup")
.args(&["-setairportpower", "en0", "off"])
.output()
.map_err(|err| WifiError::IoError(err))?;
+1 -1
View File
@@ -48,7 +48,7 @@ impl WifiInterface for Windows {
/// Turn on the wireless network adapter.
fn turn_on() -> Result<(), WifiError> {
let _output = Command::new("netsh")
Command::new("netsh")
.args(&[
"interface",
"set",