ipmi_rs_core/connection/
response.rs1use super::{Message, NetFn};
2
3#[derive(Debug, Clone, PartialEq)]
5pub struct Response {
6 seq: i64,
7 message: Message,
8}
9
10impl Response {
11 pub fn new(message: Message, seq: i64) -> Option<Self> {
15 if !message.data().is_empty() {
16 Some(Self { message, seq })
17 } else {
18 None
19 }
20 }
21 pub fn netfn(&self) -> NetFn {
23 self.message.netfn()
24 }
25
26 pub fn netfn_raw(&self) -> u8 {
28 self.message.netfn_raw()
29 }
30
31 pub fn cmd(&self) -> u8 {
33 self.message.cmd
34 }
35
36 pub fn seq(&self) -> i64 {
38 self.seq
39 }
40
41 pub fn cc(&self) -> u8 {
43 self.message.data[0]
44 }
45
46 pub fn data(&self) -> &[u8] {
48 &self.message.data[1..]
49 }
50}