1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
use super::{Command, CommandType, Response};
use connector::Connector;
use session::{Session, SessionError, SessionErrorKind};
pub fn reset<C: Connector>(mut session: Session<C>) -> Result<(), SessionError> {
if let Err(e) = session.send_encrypted_command(ResetCommand {}) {
match e.kind() {
SessionErrorKind::ProtocolError => Ok(()),
_ => Err(e),
}
} else {
Ok(())
}
}
#[derive(Serialize, Deserialize, Debug)]
pub(crate) struct ResetCommand {}
impl Command for ResetCommand {
type ResponseType = ResetResponse;
}
#[derive(Serialize, Deserialize, Debug)]
pub struct ResetResponse(pub(crate) u8);
impl Response for ResetResponse {
const COMMAND_TYPE: CommandType = CommandType::Reset;
}