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