pub enum TunError {
CreateTun {
source: Error,
},
RunShellError {
source: Error,
cmd: String,
},
ShellResultError {
result: String,
cmd: String,
backtrace: Backtrace,
},
ReadError {
source: Error,
},
WriteError {
source: Error,
},
ParseAddrFail {
source: AddrParseError,
},
PktWriteError {
source: SendError<Packet>,
},
}
Variants§
CreateTun
RunShellError
ShellResultError
ReadError
WriteError
ParseAddrFail
Fields
§
source: AddrParseError
PktWriteError
Trait Implementations§
Source§impl Error for TunError
impl Error for TunError
Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Source§fn cause(&self) -> Option<&dyn Error>
fn cause(&self) -> Option<&dyn Error>
👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
Source§impl ErrorCompat for TunError
impl ErrorCompat for TunError
Source§impl IntoError<TunError> for ParseAddrFail
impl IntoError<TunError> for ParseAddrFail
Source§type Source = AddrParseError
type Source = AddrParseError
The underlying error
Source§fn into_error(self, error: Self::Source) -> TunError
fn into_error(self, error: Self::Source) -> TunError
Combine the information to produce the error
Source§impl IntoError<TunError> for PktWriteError
impl IntoError<TunError> for PktWriteError
Source§impl<__T0> IntoError<TunError> for RunShellError<__T0>
impl<__T0> IntoError<TunError> for RunShellError<__T0>
Source§impl<__T0, __T1> IntoError<TunError> for ShellResultError<__T0, __T1>
impl<__T0, __T1> IntoError<TunError> for ShellResultError<__T0, __T1>
Auto Trait Implementations§
impl Freeze for TunError
impl !RefUnwindSafe for TunError
impl Send for TunError
impl Sync for TunError
impl Unpin for TunError
impl !UnwindSafe for TunError
Blanket Implementations§
Source§impl<T> AsErrorSource for Twhere
T: Error + 'static,
impl<T> AsErrorSource for Twhere
T: Error + 'static,
Source§fn as_error_source(&self) -> &(dyn Error + 'static)
fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
receivers.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more