1 // Licensed under the Apache License, Version 2.0
2 // <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
3 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
4 // All files in the project carrying such notice may not be copied, modified, or distributed
5 // except according to those terms.
6 //! Microsoft Internet Security Catalog API Prototypes and Definitions
7 use shared::guiddef::GUID;
8 use shared::minwindef::DWORD;
9 use um::mssip::SIP_INDIRECT_DATA;
10 use um::wincrypt::{CRYPT_ATTR_BLOB, HCRYPTMSG, HCRYPTPROV};
11 use um::winnt::{HANDLE, LPWSTR};
12 STRUCT!{struct CRYPTCATSTORE {
13     cbStruct: DWORD,
14     dwPublicVersion: DWORD,
15     pwszP7File: LPWSTR,
16     hProv: HCRYPTPROV,
17     dwEncodingType: DWORD,
18     fdwStoreFlags: DWORD,
19     hReserved: HANDLE,
20     hAttrs: HANDLE,
21     hCryptMsg: HCRYPTMSG,
22     hSorted: HANDLE,
23 }}
24 STRUCT!{struct CRYPTCATMEMBER {
25     cbStruct: DWORD,
26     pwszReferenceTag: LPWSTR,
27     pwszFileName: LPWSTR,
28     gSubjectType: GUID,
29     fdwMemberFlags: DWORD,
30     pIndirectData: *mut SIP_INDIRECT_DATA,
31     dwCertVersion: DWORD,
32     dwReserved: DWORD,
33     hReserved: HANDLE,
34     sEncodedIndirectData: CRYPT_ATTR_BLOB,
35     sEncodedMemberInfo: CRYPT_ATTR_BLOB,
36 }}
37