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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#![allow(dead_code)]
#![allow(non_snake_case)]
#![allow(non_camel_case_types)]
#![allow(unused_imports)]
use serde::{Serialize, Deserialize};
use serde_repr::{Deserialize_repr, Serialize_repr};use super::*;
use super::common::*;
#[derive(Serialize_repr, Deserialize_repr, Debug, Hash, PartialEq, Eq)]
#[repr(u8)]
pub enum InstallStatus {
Unknown_0,
Error_1,
Not_installed_2,
Installed_4,
}
#[derive(Serialize_repr, Deserialize_repr, Debug, Hash, PartialEq, Eq)]
#[repr(u8)]
pub enum InstallAction {
Unknown_0,
None_1,
Upgrade_2,
Reinstall_3,
Install_4,
}
pub struct ServiceStatus {
pub version: Option<String>,
pub label: Option<String>,
pub pid: Option<String>,
pub lastExitStatus: Option<String>,
pub bundleVersion: Option<String>,
pub installStatus: InstallStatus,
pub installAction: InstallAction,
pub status: Status,
}
pub struct ServicesStatus {
pub service: Option<Vec<ServiceStatus>>,
pub kbfs: Option<Vec<ServiceStatus>>,
pub updater: Option<Vec<ServiceStatus>>,
}
pub struct FuseMountInfo {
pub path: Option<String>,
pub fstype: Option<String>,
pub output: Option<String>,
}
pub struct FuseStatus {
pub version: Option<String>,
pub bundleVersion: Option<String>,
pub kextID: Option<String>,
pub path: Option<String>,
pub kextStarted: bool,
pub installStatus: InstallStatus,
pub installAction: InstallAction,
pub mountInfos: Option<Vec<FuseMountInfo>>,
pub status: Status,
}
pub struct ComponentResult {
pub name: Option<String>,
pub status: Status,
pub exitCode: i32,
}
pub struct InstallResult {
pub componentResults: Option<Vec<ComponentResult>>,
pub status: Status,
pub fatal: bool,
}
pub struct UninstallResult {
pub componentResults: Option<Vec<ComponentResult>>,
pub status: Status,
}