]> git.proxmox.com Git - rustc.git/blob - vendor/windows-sys/src/Windows/Win32/System/Antimalware/mod.rs
New upstream version 1.67.1+dfsg1
[rustc.git] / vendor / windows-sys / src / Windows / Win32 / System / Antimalware / mod.rs
1 #[cfg_attr(windows, link(name = "windows"))]
2 extern "system" {
3 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
4 pub fn AmsiCloseSession(amsicontext: HAMSICONTEXT, amsisession: HAMSISESSION);
5 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
6 pub fn AmsiInitialize(appname: ::windows_sys::core::PCWSTR, amsicontext: *mut HAMSICONTEXT) -> ::windows_sys::core::HRESULT;
7 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
8 pub fn AmsiNotifyOperation(amsicontext: HAMSICONTEXT, buffer: *const ::core::ffi::c_void, length: u32, contentname: ::windows_sys::core::PCWSTR, result: *mut AMSI_RESULT) -> ::windows_sys::core::HRESULT;
9 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
10 pub fn AmsiOpenSession(amsicontext: HAMSICONTEXT, amsisession: *mut HAMSISESSION) -> ::windows_sys::core::HRESULT;
11 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
12 pub fn AmsiScanBuffer(amsicontext: HAMSICONTEXT, buffer: *const ::core::ffi::c_void, length: u32, contentname: ::windows_sys::core::PCWSTR, amsisession: HAMSISESSION, result: *mut AMSI_RESULT) -> ::windows_sys::core::HRESULT;
13 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
14 pub fn AmsiScanString(amsicontext: HAMSICONTEXT, string: ::windows_sys::core::PCWSTR, contentname: ::windows_sys::core::PCWSTR, amsisession: HAMSISESSION, result: *mut AMSI_RESULT) -> ::windows_sys::core::HRESULT;
15 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
16 pub fn AmsiUninitialize(amsicontext: HAMSICONTEXT);
17 #[doc = "*Required features: `\"Win32_System_Antimalware\"`, `\"Win32_Foundation\"`*"]
18 #[cfg(feature = "Win32_Foundation")]
19 pub fn InstallELAMCertificateInfo(elamfile: super::super::Foundation::HANDLE) -> super::super::Foundation::BOOL;
20 }
21 pub type IAmsiStream = *mut ::core::ffi::c_void;
22 pub type IAntimalware = *mut ::core::ffi::c_void;
23 pub type IAntimalware2 = *mut ::core::ffi::c_void;
24 pub type IAntimalwareProvider = *mut ::core::ffi::c_void;
25 pub type IAntimalwareProvider2 = *mut ::core::ffi::c_void;
26 pub type IAntimalwareUacProvider = *mut ::core::ffi::c_void;
27 pub const CAntimalware: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4256173650, data2: 41492, data3: 19105, data4: [143, 186, 67, 87, 187, 0, 114, 236] };
28 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
29 pub type AMSI_ATTRIBUTE = i32;
30 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
31 pub const AMSI_ATTRIBUTE_APP_NAME: AMSI_ATTRIBUTE = 0i32;
32 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
33 pub const AMSI_ATTRIBUTE_CONTENT_NAME: AMSI_ATTRIBUTE = 1i32;
34 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
35 pub const AMSI_ATTRIBUTE_CONTENT_SIZE: AMSI_ATTRIBUTE = 2i32;
36 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
37 pub const AMSI_ATTRIBUTE_CONTENT_ADDRESS: AMSI_ATTRIBUTE = 3i32;
38 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
39 pub const AMSI_ATTRIBUTE_SESSION: AMSI_ATTRIBUTE = 4i32;
40 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
41 pub const AMSI_ATTRIBUTE_REDIRECT_CHAIN_SIZE: AMSI_ATTRIBUTE = 5i32;
42 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
43 pub const AMSI_ATTRIBUTE_REDIRECT_CHAIN_ADDRESS: AMSI_ATTRIBUTE = 6i32;
44 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
45 pub const AMSI_ATTRIBUTE_ALL_SIZE: AMSI_ATTRIBUTE = 7i32;
46 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
47 pub const AMSI_ATTRIBUTE_ALL_ADDRESS: AMSI_ATTRIBUTE = 8i32;
48 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
49 pub const AMSI_ATTRIBUTE_QUIET: AMSI_ATTRIBUTE = 9i32;
50 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
51 pub type AMSI_RESULT = i32;
52 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
53 pub const AMSI_RESULT_CLEAN: AMSI_RESULT = 0i32;
54 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
55 pub const AMSI_RESULT_NOT_DETECTED: AMSI_RESULT = 1i32;
56 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
57 pub const AMSI_RESULT_BLOCKED_BY_ADMIN_START: AMSI_RESULT = 16384i32;
58 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
59 pub const AMSI_RESULT_BLOCKED_BY_ADMIN_END: AMSI_RESULT = 20479i32;
60 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
61 pub const AMSI_RESULT_DETECTED: AMSI_RESULT = 32768i32;
62 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
63 pub type AMSI_UAC_MSI_ACTION = i32;
64 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
65 pub const AMSI_UAC_MSI_ACTION_INSTALL: AMSI_UAC_MSI_ACTION = 0i32;
66 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
67 pub const AMSI_UAC_MSI_ACTION_UNINSTALL: AMSI_UAC_MSI_ACTION = 1i32;
68 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
69 pub const AMSI_UAC_MSI_ACTION_UPDATE: AMSI_UAC_MSI_ACTION = 2i32;
70 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
71 pub const AMSI_UAC_MSI_ACTION_MAINTENANCE: AMSI_UAC_MSI_ACTION = 3i32;
72 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
73 pub const AMSI_UAC_MSI_ACTION_MAX: AMSI_UAC_MSI_ACTION = 4i32;
74 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
75 pub type AMSI_UAC_REQUEST_TYPE = i32;
76 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
77 pub const AMSI_UAC_REQUEST_TYPE_EXE: AMSI_UAC_REQUEST_TYPE = 0i32;
78 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
79 pub const AMSI_UAC_REQUEST_TYPE_COM: AMSI_UAC_REQUEST_TYPE = 1i32;
80 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
81 pub const AMSI_UAC_REQUEST_TYPE_MSI: AMSI_UAC_REQUEST_TYPE = 2i32;
82 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
83 pub const AMSI_UAC_REQUEST_TYPE_AX: AMSI_UAC_REQUEST_TYPE = 3i32;
84 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
85 pub const AMSI_UAC_REQUEST_TYPE_PACKAGED_APP: AMSI_UAC_REQUEST_TYPE = 4i32;
86 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
87 pub const AMSI_UAC_REQUEST_TYPE_MAX: AMSI_UAC_REQUEST_TYPE = 5i32;
88 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
89 pub type AMSI_UAC_TRUST_STATE = i32;
90 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
91 pub const AMSI_UAC_TRUST_STATE_TRUSTED: AMSI_UAC_TRUST_STATE = 0i32;
92 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
93 pub const AMSI_UAC_TRUST_STATE_UNTRUSTED: AMSI_UAC_TRUST_STATE = 1i32;
94 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
95 pub const AMSI_UAC_TRUST_STATE_BLOCKED: AMSI_UAC_TRUST_STATE = 2i32;
96 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
97 pub const AMSI_UAC_TRUST_STATE_MAX: AMSI_UAC_TRUST_STATE = 3i32;
98 #[repr(C)]
99 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
100 pub struct AMSI_UAC_REQUEST_AX_INFO {
101 pub ulLength: u32,
102 pub lpwszLocalInstallPath: ::windows_sys::core::PWSTR,
103 pub lpwszSourceURL: ::windows_sys::core::PWSTR,
104 }
105 impl ::core::marker::Copy for AMSI_UAC_REQUEST_AX_INFO {}
106 impl ::core::clone::Clone for AMSI_UAC_REQUEST_AX_INFO {
107 fn clone(&self) -> Self {
108 *self
109 }
110 }
111 #[repr(C)]
112 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
113 pub struct AMSI_UAC_REQUEST_COM_INFO {
114 pub ulLength: u32,
115 pub lpwszServerBinary: ::windows_sys::core::PWSTR,
116 pub lpwszRequestor: ::windows_sys::core::PWSTR,
117 pub Clsid: ::windows_sys::core::GUID,
118 }
119 impl ::core::marker::Copy for AMSI_UAC_REQUEST_COM_INFO {}
120 impl ::core::clone::Clone for AMSI_UAC_REQUEST_COM_INFO {
121 fn clone(&self) -> Self {
122 *self
123 }
124 }
125 #[repr(C)]
126 #[doc = "*Required features: `\"Win32_System_Antimalware\"`, `\"Win32_Foundation\"`*"]
127 #[cfg(feature = "Win32_Foundation")]
128 pub struct AMSI_UAC_REQUEST_CONTEXT {
129 pub ulLength: u32,
130 pub ulRequestorProcessId: u32,
131 pub UACTrustState: AMSI_UAC_TRUST_STATE,
132 pub Type: AMSI_UAC_REQUEST_TYPE,
133 pub RequestType: AMSI_UAC_REQUEST_CONTEXT_0,
134 pub bAutoElevateRequest: super::super::Foundation::BOOL,
135 }
136 #[cfg(feature = "Win32_Foundation")]
137 impl ::core::marker::Copy for AMSI_UAC_REQUEST_CONTEXT {}
138 #[cfg(feature = "Win32_Foundation")]
139 impl ::core::clone::Clone for AMSI_UAC_REQUEST_CONTEXT {
140 fn clone(&self) -> Self {
141 *self
142 }
143 }
144 #[repr(C)]
145 #[doc = "*Required features: `\"Win32_System_Antimalware\"`, `\"Win32_Foundation\"`*"]
146 #[cfg(feature = "Win32_Foundation")]
147 pub union AMSI_UAC_REQUEST_CONTEXT_0 {
148 pub ExeInfo: AMSI_UAC_REQUEST_EXE_INFO,
149 pub ComInfo: AMSI_UAC_REQUEST_COM_INFO,
150 pub MsiInfo: AMSI_UAC_REQUEST_MSI_INFO,
151 pub ActiveXInfo: AMSI_UAC_REQUEST_AX_INFO,
152 pub PackagedAppInfo: AMSI_UAC_REQUEST_PACKAGED_APP_INFO,
153 }
154 #[cfg(feature = "Win32_Foundation")]
155 impl ::core::marker::Copy for AMSI_UAC_REQUEST_CONTEXT_0 {}
156 #[cfg(feature = "Win32_Foundation")]
157 impl ::core::clone::Clone for AMSI_UAC_REQUEST_CONTEXT_0 {
158 fn clone(&self) -> Self {
159 *self
160 }
161 }
162 #[repr(C)]
163 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
164 pub struct AMSI_UAC_REQUEST_EXE_INFO {
165 pub ulLength: u32,
166 pub lpwszApplicationName: ::windows_sys::core::PWSTR,
167 pub lpwszCommandLine: ::windows_sys::core::PWSTR,
168 pub lpwszDLLParameter: ::windows_sys::core::PWSTR,
169 }
170 impl ::core::marker::Copy for AMSI_UAC_REQUEST_EXE_INFO {}
171 impl ::core::clone::Clone for AMSI_UAC_REQUEST_EXE_INFO {
172 fn clone(&self) -> Self {
173 *self
174 }
175 }
176 #[repr(C)]
177 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
178 pub struct AMSI_UAC_REQUEST_MSI_INFO {
179 pub ulLength: u32,
180 pub MsiAction: AMSI_UAC_MSI_ACTION,
181 pub lpwszProductName: ::windows_sys::core::PWSTR,
182 pub lpwszVersion: ::windows_sys::core::PWSTR,
183 pub lpwszLanguage: ::windows_sys::core::PWSTR,
184 pub lpwszManufacturer: ::windows_sys::core::PWSTR,
185 pub lpwszPackagePath: ::windows_sys::core::PWSTR,
186 pub lpwszPackageSource: ::windows_sys::core::PWSTR,
187 pub ulUpdates: u32,
188 pub ppwszUpdates: *mut ::windows_sys::core::PWSTR,
189 pub ppwszUpdateSources: *mut ::windows_sys::core::PWSTR,
190 }
191 impl ::core::marker::Copy for AMSI_UAC_REQUEST_MSI_INFO {}
192 impl ::core::clone::Clone for AMSI_UAC_REQUEST_MSI_INFO {
193 fn clone(&self) -> Self {
194 *self
195 }
196 }
197 #[repr(C)]
198 #[doc = "*Required features: `\"Win32_System_Antimalware\"`*"]
199 pub struct AMSI_UAC_REQUEST_PACKAGED_APP_INFO {
200 pub ulLength: u32,
201 pub lpwszApplicationName: ::windows_sys::core::PWSTR,
202 pub lpwszCommandLine: ::windows_sys::core::PWSTR,
203 pub lpPackageFamilyName: ::windows_sys::core::PWSTR,
204 pub lpApplicationId: ::windows_sys::core::PWSTR,
205 }
206 impl ::core::marker::Copy for AMSI_UAC_REQUEST_PACKAGED_APP_INFO {}
207 impl ::core::clone::Clone for AMSI_UAC_REQUEST_PACKAGED_APP_INFO {
208 fn clone(&self) -> Self {
209 *self
210 }
211 }
212 pub type HAMSICONTEXT = isize;
213 pub type HAMSISESSION = isize;