summaryrefslogtreecommitdiffstats
path: root/vendor/windows-sys/src/Windows/Win32/System/TpmBaseServices/mod.rs
blob: 9be387cda98241cf05ed458e46c841500b3b42ab (plain)
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
#[link(name = "windows")]
extern "system" {
    #[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`, `\"Win32_Foundation\"`*"]
    #[cfg(feature = "Win32_Foundation")]
    pub fn GetDeviceID(pbwindowsaik: *mut u8, cbwindowsaik: u32, pcbresult: *mut u32, pfprotectedbytpm: *mut super::super::Foundation::BOOL) -> ::windows_sys::core::HRESULT;
    #[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`, `\"Win32_Foundation\"`*"]
    #[cfg(feature = "Win32_Foundation")]
    pub fn GetDeviceIDString(pszwindowsaik: ::windows_sys::core::PWSTR, cchwindowsaik: u32, pcchresult: *mut u32, pfprotectedbytpm: *mut super::super::Foundation::BOOL) -> ::windows_sys::core::HRESULT;
    #[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
    pub fn Tbsi_Context_Create(pcontextparams: *const TBS_CONTEXT_PARAMS, phcontext: *mut *mut ::core::ffi::c_void) -> u32;
    #[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
    pub fn Tbsi_Create_Windows_Key(keyhandle: u32) -> u32;
    #[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
    pub fn Tbsi_GetDeviceInfo(size: u32, info: *mut ::core::ffi::c_void) -> u32;
    #[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
    pub fn Tbsi_Get_OwnerAuth(hcontext: *const ::core::ffi::c_void, ownerauthtype: u32, poutputbuf: *mut u8, poutputbuflen: *mut u32) -> u32;
    #[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
    pub fn Tbsi_Get_TCG_Log(hcontext: *const ::core::ffi::c_void, poutputbuf: *mut u8, poutputbuflen: *mut u32) -> u32;
    #[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
    pub fn Tbsi_Get_TCG_Log_Ex(logtype: u32, pboutput: *mut u8, pcboutput: *mut u32) -> u32;
    #[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
    pub fn Tbsi_Physical_Presence_Command(hcontext: *const ::core::ffi::c_void, pabinput: *const u8, cbinput: u32, paboutput: *mut u8, pcboutput: *mut u32) -> u32;
    #[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
    pub fn Tbsi_Revoke_Attestation() -> u32;
    #[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
    pub fn Tbsip_Cancel_Commands(hcontext: *const ::core::ffi::c_void) -> u32;
    #[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
    pub fn Tbsip_Context_Close(hcontext: *const ::core::ffi::c_void) -> u32;
    #[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
    pub fn Tbsip_Submit_Command(hcontext: *const ::core::ffi::c_void, locality: TBS_COMMAND_LOCALITY, priority: TBS_COMMAND_PRIORITY, pabcommand: *const u8, cbcommand: u32, pabresult: *mut u8, pcbresult: *mut u32) -> u32;
}
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub type TBS_COMMAND_LOCALITY = u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_COMMAND_LOCALITY_ZERO: TBS_COMMAND_LOCALITY = 0u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_COMMAND_LOCALITY_ONE: TBS_COMMAND_LOCALITY = 1u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_COMMAND_LOCALITY_TWO: TBS_COMMAND_LOCALITY = 2u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_COMMAND_LOCALITY_THREE: TBS_COMMAND_LOCALITY = 3u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_COMMAND_LOCALITY_FOUR: TBS_COMMAND_LOCALITY = 4u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub type TBS_COMMAND_PRIORITY = u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_COMMAND_PRIORITY_LOW: TBS_COMMAND_PRIORITY = 100u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_COMMAND_PRIORITY_NORMAL: TBS_COMMAND_PRIORITY = 200u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_COMMAND_PRIORITY_SYSTEM: TBS_COMMAND_PRIORITY = 400u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_COMMAND_PRIORITY_HIGH: TBS_COMMAND_PRIORITY = 300u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_COMMAND_PRIORITY_MAX: TBS_COMMAND_PRIORITY = 2147483648u32;
#[repr(C)]
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub struct TBS_CONTEXT_PARAMS {
    pub version: u32,
}
impl ::core::marker::Copy for TBS_CONTEXT_PARAMS {}
impl ::core::clone::Clone for TBS_CONTEXT_PARAMS {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub struct TBS_CONTEXT_PARAMS2 {
    pub version: u32,
    pub Anonymous: TBS_CONTEXT_PARAMS2_0,
}
impl ::core::marker::Copy for TBS_CONTEXT_PARAMS2 {}
impl ::core::clone::Clone for TBS_CONTEXT_PARAMS2 {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub union TBS_CONTEXT_PARAMS2_0 {
    pub Anonymous: TBS_CONTEXT_PARAMS2_0_0,
    pub asUINT32: u32,
}
impl ::core::marker::Copy for TBS_CONTEXT_PARAMS2_0 {}
impl ::core::clone::Clone for TBS_CONTEXT_PARAMS2_0 {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub struct TBS_CONTEXT_PARAMS2_0_0 {
    pub _bitfield: u32,
}
impl ::core::marker::Copy for TBS_CONTEXT_PARAMS2_0_0 {}
impl ::core::clone::Clone for TBS_CONTEXT_PARAMS2_0_0 {
    fn clone(&self) -> Self {
        *self
    }
}
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_CONTEXT_VERSION_ONE: u32 = 1u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_CONTEXT_VERSION_TWO: u32 = 2u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_OWNERAUTH_TYPE_ADMIN: u32 = 2u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_OWNERAUTH_TYPE_ENDORSEMENT: u32 = 4u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_OWNERAUTH_TYPE_ENDORSEMENT_20: u32 = 12u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_OWNERAUTH_TYPE_FULL: u32 = 1u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_OWNERAUTH_TYPE_STORAGE_20: u32 = 13u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_OWNERAUTH_TYPE_USER: u32 = 3u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_SUCCESS: u32 = 0u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_TCGLOG_DRTM_BOOT: u32 = 4u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_TCGLOG_DRTM_CURRENT: u32 = 1u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_TCGLOG_DRTM_RESUME: u32 = 5u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_TCGLOG_SRTM_BOOT: u32 = 2u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_TCGLOG_SRTM_CURRENT: u32 = 0u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TBS_TCGLOG_SRTM_RESUME: u32 = 3u32;
#[repr(C)]
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub struct TPM_DEVICE_INFO {
    pub structVersion: u32,
    pub tpmVersion: u32,
    pub tpmInterfaceType: u32,
    pub tpmImpRevision: u32,
}
impl ::core::marker::Copy for TPM_DEVICE_INFO {}
impl ::core::clone::Clone for TPM_DEVICE_INFO {
    fn clone(&self) -> Self {
        *self
    }
}
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TPM_IFTYPE_1: u32 = 1u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TPM_IFTYPE_EMULATOR: u32 = 4u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TPM_IFTYPE_HW: u32 = 3u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TPM_IFTYPE_SPB: u32 = 5u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TPM_IFTYPE_TRUSTZONE: u32 = 2u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TPM_IFTYPE_UNKNOWN: u32 = 0u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TPM_VERSION_12: u32 = 1u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TPM_VERSION_20: u32 = 2u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TPM_VERSION_UNKNOWN: u32 = 0u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TPM_WNF_INFO_CLEAR_SUCCESSFUL: u32 = 1u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TPM_WNF_INFO_NO_REBOOT_REQUIRED: u32 = 1u32;
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub const TPM_WNF_INFO_OWNERSHIP_SUCCESSFUL: u32 = 2u32;
#[repr(C)]
#[doc = "*Required features: `\"Win32_System_TpmBaseServices\"`*"]
pub struct tdTPM_WNF_PROVISIONING {
    pub status: u32,
    pub message: [u8; 28],
}
impl ::core::marker::Copy for tdTPM_WNF_PROVISIONING {}
impl ::core::clone::Clone for tdTPM_WNF_PROVISIONING {
    fn clone(&self) -> Self {
        *self
    }
}