]> git.proxmox.com Git - rustc.git/blame - vendor/windows/src/Windows/Win32/System/SecurityCenter/impl.rs
New upstream version 1.70.0+dfsg1
[rustc.git] / vendor / windows / src / Windows / Win32 / System / SecurityCenter / impl.rs
CommitLineData
353b0b11
FG
1#[doc = "*Required features: `\"Win32_System_SecurityCenter\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"implement\"`*"]
2#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
3pub trait IWSCDefaultProduct_Impl: Sized + super::Com::IDispatch_Impl {
4 fn SetDefaultProduct(&self, etype: SECURITY_PRODUCT_TYPE, pguid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
5}
6#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
7impl ::windows::core::RuntimeName for IWSCDefaultProduct {}
8#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
9impl IWSCDefaultProduct_Vtbl {
10 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWSCDefaultProduct_Impl, const OFFSET: isize>() -> IWSCDefaultProduct_Vtbl {
11 unsafe extern "system" fn SetDefaultProduct<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWSCDefaultProduct_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, etype: SECURITY_PRODUCT_TYPE, pguid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
12 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
13 let this = (*this).get_impl();
14 this.SetDefaultProduct(::core::mem::transmute_copy(&etype), ::core::mem::transmute(&pguid)).into()
15 }
16 Self { base__: super::Com::IDispatch_Vtbl::new::<Identity, Impl, OFFSET>(), SetDefaultProduct: SetDefaultProduct::<Identity, Impl, OFFSET> }
17 }
18 pub fn matches(iid: &windows::core::GUID) -> bool {
19 iid == &<IWSCDefaultProduct as ::windows::core::ComInterface>::IID || iid == &<super::Com::IDispatch as ::windows::core::ComInterface>::IID
20 }
21}
22#[doc = "*Required features: `\"Win32_System_SecurityCenter\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"implement\"`*"]
23#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
24pub trait IWSCProductList_Impl: Sized + super::Com::IDispatch_Impl {
25 fn Initialize(&self, provider: WSC_SECURITY_PROVIDER) -> ::windows::core::Result<()>;
26 fn Count(&self) -> ::windows::core::Result<i32>;
27 fn get_Item(&self, index: u32) -> ::windows::core::Result<IWscProduct>;
28}
29#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
30impl ::windows::core::RuntimeName for IWSCProductList {}
31#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
32impl IWSCProductList_Vtbl {
33 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWSCProductList_Impl, const OFFSET: isize>() -> IWSCProductList_Vtbl {
34 unsafe extern "system" fn Initialize<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWSCProductList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, provider: WSC_SECURITY_PROVIDER) -> ::windows::core::HRESULT {
35 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
36 let this = (*this).get_impl();
37 this.Initialize(::core::mem::transmute_copy(&provider)).into()
38 }
39 unsafe extern "system" fn Count<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWSCProductList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pval: *mut i32) -> ::windows::core::HRESULT {
40 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
41 let this = (*this).get_impl();
42 match this.Count() {
43 ::core::result::Result::Ok(ok__) => {
44 ::core::ptr::write(pval, ::core::mem::transmute(ok__));
45 ::windows::core::HRESULT(0)
46 }
47 ::core::result::Result::Err(err) => err.into(),
48 }
49 }
50 unsafe extern "system" fn get_Item<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWSCProductList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, index: u32, pval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
51 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
52 let this = (*this).get_impl();
53 match this.get_Item(::core::mem::transmute_copy(&index)) {
54 ::core::result::Result::Ok(ok__) => {
55 ::core::ptr::write(pval, ::core::mem::transmute(ok__));
56 ::windows::core::HRESULT(0)
57 }
58 ::core::result::Result::Err(err) => err.into(),
59 }
60 }
61 Self {
62 base__: super::Com::IDispatch_Vtbl::new::<Identity, Impl, OFFSET>(),
63 Initialize: Initialize::<Identity, Impl, OFFSET>,
64 Count: Count::<Identity, Impl, OFFSET>,
65 get_Item: get_Item::<Identity, Impl, OFFSET>,
66 }
67 }
68 pub fn matches(iid: &windows::core::GUID) -> bool {
69 iid == &<IWSCProductList as ::windows::core::ComInterface>::IID || iid == &<super::Com::IDispatch as ::windows::core::ComInterface>::IID
70 }
71}
72#[doc = "*Required features: `\"Win32_System_SecurityCenter\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"implement\"`*"]
73#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
74pub trait IWscProduct_Impl: Sized + super::Com::IDispatch_Impl {
75 fn ProductName(&self) -> ::windows::core::Result<::windows::core::BSTR>;
76 fn ProductState(&self) -> ::windows::core::Result<WSC_SECURITY_PRODUCT_STATE>;
77 fn SignatureStatus(&self) -> ::windows::core::Result<WSC_SECURITY_SIGNATURE_STATUS>;
78 fn RemediationPath(&self) -> ::windows::core::Result<::windows::core::BSTR>;
79 fn ProductStateTimestamp(&self) -> ::windows::core::Result<::windows::core::BSTR>;
80 fn ProductGuid(&self) -> ::windows::core::Result<::windows::core::BSTR>;
81 fn ProductIsDefault(&self) -> ::windows::core::Result<super::super::Foundation::BOOL>;
82}
83#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
84impl ::windows::core::RuntimeName for IWscProduct {}
85#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
86impl IWscProduct_Vtbl {
87 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct_Impl, const OFFSET: isize>() -> IWscProduct_Vtbl {
88 unsafe extern "system" fn ProductName<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pval: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
89 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
90 let this = (*this).get_impl();
91 match this.ProductName() {
92 ::core::result::Result::Ok(ok__) => {
93 ::core::ptr::write(pval, ::core::mem::transmute(ok__));
94 ::windows::core::HRESULT(0)
95 }
96 ::core::result::Result::Err(err) => err.into(),
97 }
98 }
99 unsafe extern "system" fn ProductState<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pval: *mut WSC_SECURITY_PRODUCT_STATE) -> ::windows::core::HRESULT {
100 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
101 let this = (*this).get_impl();
102 match this.ProductState() {
103 ::core::result::Result::Ok(ok__) => {
104 ::core::ptr::write(pval, ::core::mem::transmute(ok__));
105 ::windows::core::HRESULT(0)
106 }
107 ::core::result::Result::Err(err) => err.into(),
108 }
109 }
110 unsafe extern "system" fn SignatureStatus<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pval: *mut WSC_SECURITY_SIGNATURE_STATUS) -> ::windows::core::HRESULT {
111 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
112 let this = (*this).get_impl();
113 match this.SignatureStatus() {
114 ::core::result::Result::Ok(ok__) => {
115 ::core::ptr::write(pval, ::core::mem::transmute(ok__));
116 ::windows::core::HRESULT(0)
117 }
118 ::core::result::Result::Err(err) => err.into(),
119 }
120 }
121 unsafe extern "system" fn RemediationPath<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pval: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
122 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
123 let this = (*this).get_impl();
124 match this.RemediationPath() {
125 ::core::result::Result::Ok(ok__) => {
126 ::core::ptr::write(pval, ::core::mem::transmute(ok__));
127 ::windows::core::HRESULT(0)
128 }
129 ::core::result::Result::Err(err) => err.into(),
130 }
131 }
132 unsafe extern "system" fn ProductStateTimestamp<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pval: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
133 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
134 let this = (*this).get_impl();
135 match this.ProductStateTimestamp() {
136 ::core::result::Result::Ok(ok__) => {
137 ::core::ptr::write(pval, ::core::mem::transmute(ok__));
138 ::windows::core::HRESULT(0)
139 }
140 ::core::result::Result::Err(err) => err.into(),
141 }
142 }
143 unsafe extern "system" fn ProductGuid<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pval: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
144 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
145 let this = (*this).get_impl();
146 match this.ProductGuid() {
147 ::core::result::Result::Ok(ok__) => {
148 ::core::ptr::write(pval, ::core::mem::transmute(ok__));
149 ::windows::core::HRESULT(0)
150 }
151 ::core::result::Result::Err(err) => err.into(),
152 }
153 }
154 unsafe extern "system" fn ProductIsDefault<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pval: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT {
155 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
156 let this = (*this).get_impl();
157 match this.ProductIsDefault() {
158 ::core::result::Result::Ok(ok__) => {
159 ::core::ptr::write(pval, ::core::mem::transmute(ok__));
160 ::windows::core::HRESULT(0)
161 }
162 ::core::result::Result::Err(err) => err.into(),
163 }
164 }
165 Self {
166 base__: super::Com::IDispatch_Vtbl::new::<Identity, Impl, OFFSET>(),
167 ProductName: ProductName::<Identity, Impl, OFFSET>,
168 ProductState: ProductState::<Identity, Impl, OFFSET>,
169 SignatureStatus: SignatureStatus::<Identity, Impl, OFFSET>,
170 RemediationPath: RemediationPath::<Identity, Impl, OFFSET>,
171 ProductStateTimestamp: ProductStateTimestamp::<Identity, Impl, OFFSET>,
172 ProductGuid: ProductGuid::<Identity, Impl, OFFSET>,
173 ProductIsDefault: ProductIsDefault::<Identity, Impl, OFFSET>,
174 }
175 }
176 pub fn matches(iid: &windows::core::GUID) -> bool {
177 iid == &<IWscProduct as ::windows::core::ComInterface>::IID || iid == &<super::Com::IDispatch as ::windows::core::ComInterface>::IID
178 }
179}
180#[doc = "*Required features: `\"Win32_System_SecurityCenter\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"implement\"`*"]
181#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
182pub trait IWscProduct2_Impl: Sized + IWscProduct_Impl {
183 fn AntivirusScanSubstatus(&self) -> ::windows::core::Result<WSC_SECURITY_PRODUCT_SUBSTATUS>;
184 fn AntivirusSettingsSubstatus(&self) -> ::windows::core::Result<WSC_SECURITY_PRODUCT_SUBSTATUS>;
185 fn AntivirusProtectionUpdateSubstatus(&self) -> ::windows::core::Result<WSC_SECURITY_PRODUCT_SUBSTATUS>;
186 fn FirewallDomainProfileSubstatus(&self) -> ::windows::core::Result<WSC_SECURITY_PRODUCT_SUBSTATUS>;
187 fn FirewallPrivateProfileSubstatus(&self) -> ::windows::core::Result<WSC_SECURITY_PRODUCT_SUBSTATUS>;
188 fn FirewallPublicProfileSubstatus(&self) -> ::windows::core::Result<WSC_SECURITY_PRODUCT_SUBSTATUS>;
189}
190#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
191impl ::windows::core::RuntimeName for IWscProduct2 {}
192#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
193impl IWscProduct2_Vtbl {
194 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct2_Impl, const OFFSET: isize>() -> IWscProduct2_Vtbl {
195 unsafe extern "system" fn AntivirusScanSubstatus<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pestatus: *mut WSC_SECURITY_PRODUCT_SUBSTATUS) -> ::windows::core::HRESULT {
196 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
197 let this = (*this).get_impl();
198 match this.AntivirusScanSubstatus() {
199 ::core::result::Result::Ok(ok__) => {
200 ::core::ptr::write(pestatus, ::core::mem::transmute(ok__));
201 ::windows::core::HRESULT(0)
202 }
203 ::core::result::Result::Err(err) => err.into(),
204 }
205 }
206 unsafe extern "system" fn AntivirusSettingsSubstatus<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pestatus: *mut WSC_SECURITY_PRODUCT_SUBSTATUS) -> ::windows::core::HRESULT {
207 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
208 let this = (*this).get_impl();
209 match this.AntivirusSettingsSubstatus() {
210 ::core::result::Result::Ok(ok__) => {
211 ::core::ptr::write(pestatus, ::core::mem::transmute(ok__));
212 ::windows::core::HRESULT(0)
213 }
214 ::core::result::Result::Err(err) => err.into(),
215 }
216 }
217 unsafe extern "system" fn AntivirusProtectionUpdateSubstatus<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pestatus: *mut WSC_SECURITY_PRODUCT_SUBSTATUS) -> ::windows::core::HRESULT {
218 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
219 let this = (*this).get_impl();
220 match this.AntivirusProtectionUpdateSubstatus() {
221 ::core::result::Result::Ok(ok__) => {
222 ::core::ptr::write(pestatus, ::core::mem::transmute(ok__));
223 ::windows::core::HRESULT(0)
224 }
225 ::core::result::Result::Err(err) => err.into(),
226 }
227 }
228 unsafe extern "system" fn FirewallDomainProfileSubstatus<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pestatus: *mut WSC_SECURITY_PRODUCT_SUBSTATUS) -> ::windows::core::HRESULT {
229 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
230 let this = (*this).get_impl();
231 match this.FirewallDomainProfileSubstatus() {
232 ::core::result::Result::Ok(ok__) => {
233 ::core::ptr::write(pestatus, ::core::mem::transmute(ok__));
234 ::windows::core::HRESULT(0)
235 }
236 ::core::result::Result::Err(err) => err.into(),
237 }
238 }
239 unsafe extern "system" fn FirewallPrivateProfileSubstatus<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pestatus: *mut WSC_SECURITY_PRODUCT_SUBSTATUS) -> ::windows::core::HRESULT {
240 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
241 let this = (*this).get_impl();
242 match this.FirewallPrivateProfileSubstatus() {
243 ::core::result::Result::Ok(ok__) => {
244 ::core::ptr::write(pestatus, ::core::mem::transmute(ok__));
245 ::windows::core::HRESULT(0)
246 }
247 ::core::result::Result::Err(err) => err.into(),
248 }
249 }
250 unsafe extern "system" fn FirewallPublicProfileSubstatus<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pestatus: *mut WSC_SECURITY_PRODUCT_SUBSTATUS) -> ::windows::core::HRESULT {
251 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
252 let this = (*this).get_impl();
253 match this.FirewallPublicProfileSubstatus() {
254 ::core::result::Result::Ok(ok__) => {
255 ::core::ptr::write(pestatus, ::core::mem::transmute(ok__));
256 ::windows::core::HRESULT(0)
257 }
258 ::core::result::Result::Err(err) => err.into(),
259 }
260 }
261 Self {
262 base__: IWscProduct_Vtbl::new::<Identity, Impl, OFFSET>(),
263 AntivirusScanSubstatus: AntivirusScanSubstatus::<Identity, Impl, OFFSET>,
264 AntivirusSettingsSubstatus: AntivirusSettingsSubstatus::<Identity, Impl, OFFSET>,
265 AntivirusProtectionUpdateSubstatus: AntivirusProtectionUpdateSubstatus::<Identity, Impl, OFFSET>,
266 FirewallDomainProfileSubstatus: FirewallDomainProfileSubstatus::<Identity, Impl, OFFSET>,
267 FirewallPrivateProfileSubstatus: FirewallPrivateProfileSubstatus::<Identity, Impl, OFFSET>,
268 FirewallPublicProfileSubstatus: FirewallPublicProfileSubstatus::<Identity, Impl, OFFSET>,
269 }
270 }
271 pub fn matches(iid: &windows::core::GUID) -> bool {
272 iid == &<IWscProduct2 as ::windows::core::ComInterface>::IID || iid == &<super::Com::IDispatch as ::windows::core::ComInterface>::IID || iid == &<IWscProduct as ::windows::core::ComInterface>::IID
273 }
274}
275#[doc = "*Required features: `\"Win32_System_SecurityCenter\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`, `\"implement\"`*"]
276#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
277pub trait IWscProduct3_Impl: Sized + IWscProduct2_Impl {
278 fn AntivirusDaysUntilExpired(&self) -> ::windows::core::Result<u32>;
279}
280#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
281impl ::windows::core::RuntimeName for IWscProduct3 {}
282#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
283impl IWscProduct3_Vtbl {
284 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct3_Impl, const OFFSET: isize>() -> IWscProduct3_Vtbl {
285 unsafe extern "system" fn AntivirusDaysUntilExpired<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IWscProduct3_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pdwdays: *mut u32) -> ::windows::core::HRESULT {
286 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
287 let this = (*this).get_impl();
288 match this.AntivirusDaysUntilExpired() {
289 ::core::result::Result::Ok(ok__) => {
290 ::core::ptr::write(pdwdays, ::core::mem::transmute(ok__));
291 ::windows::core::HRESULT(0)
292 }
293 ::core::result::Result::Err(err) => err.into(),
294 }
295 }
296 Self { base__: IWscProduct2_Vtbl::new::<Identity, Impl, OFFSET>(), AntivirusDaysUntilExpired: AntivirusDaysUntilExpired::<Identity, Impl, OFFSET> }
297 }
298 pub fn matches(iid: &windows::core::GUID) -> bool {
299 iid == &<IWscProduct3 as ::windows::core::ComInterface>::IID || iid == &<super::Com::IDispatch as ::windows::core::ComInterface>::IID || iid == &<IWscProduct as ::windows::core::ComInterface>::IID || iid == &<IWscProduct2 as ::windows::core::ComInterface>::IID
300 }
301}