ReactOS 0.4.16-dev-2528-g7139e57
mscat.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2004 Francois Gouget
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19#ifndef __WINE_MSCAT_H
20#define __WINE_MSCAT_H
21
22#include <mssip.h>
23
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
31#define CRYPTCAT_ATTR_NAMEASCII 0x00000001
32#define CRYPTCAT_ATTR_NAMEOBJID 0x00000002
33#define CRYPTCAT_ATTR_DATAASCII 0x00010000
34#define CRYPTCAT_ATTR_DATAOBJID 0x00020000
35#define CRYPTCAT_ATTR_DATAREPLACE 0x00040000
36#define CRYPTCAT_ATTR_NO_AUTO_COMPAT_ENTRY 0x01000000
37#define CRYPTCAT_ATTR_AUTHENTICATED 0x10000000
38#define CRYPTCAT_ATTR_UNAUTHENTICATED 0x20000000
39
40#define CRYPTCAT_OPEN_CREATENEW 0x00000001
41#define CRYPTCAT_OPEN_ALWAYS 0x00000002
42#define CRYPTCAT_OPEN_EXISTING 0x00000004
43#define CRYPTCAT_OPEN_EXCLUDE_PAGE_HASHES 0x00010000
44#define CRYPTCAT_OPEN_INCLUDE_PAGE_HASHES 0x00020000
45#define CRYPTCAT_OPEN_VERIFYSIGHASH 0x10000000
46#define CRYPTCAT_OPEN_NO_CONTENT_HCRYPTMSG 0x20000000
47#define CRYPTCAT_OPEN_SORTED 0x40000000
48#define CRYPTCAT_OPEN_FLAGS_MASK 0xffff0000
49
50#define CRYPTCAT_E_AREA_HEADER 0x00000000
51#define CRYPTCAT_E_AREA_MEMBER 0x00010000
52#define CRYPTCAT_E_AREA_ATTRIBUTE 0x00020000
53
54#define CRYPTCAT_E_CDF_UNSUPPORTED 0x00000001
55#define CRYPTCAT_E_CDF_DUPLICATE 0x00000002
56#define CRYPTCAT_E_CDF_TAGNOTFOUND 0x00000004
57
58#define CRYPTCAT_E_CDF_MEMBER_FILE_PATH 0x00010001
59#define CRYPTCAT_E_CDF_MEMBER_INDIRECTDATA 0x00010002
60#define CRYPTCAT_E_CDF_MEMBER_FILENOTFOUND 0x00010004
61
62#define CRYPTCAT_E_CDF_BAD_GUID_CONV 0x00020001
63#define CRYPTCAT_E_CDF_ATTR_TOOFEWVALUES 0x00020002
64#define CRYPTCAT_E_CDF_ATTR_TYPECOMBO 0x00020004
65
66#define CRYPTCAT_VERSION_1 0x100
67#define CRYPTCAT_VERSION_2 0x200
68
69#include <pshpack8.h>
70
71typedef struct CRYPTCATATTRIBUTE_
72{
80
81typedef struct CRYPTCATMEMBER_
82{
95
96typedef struct CATALOG_INFO_
97{
101
102typedef struct CRYPTCATCDF_
103{
112
113#include <poppack.h>
114
116
147
148#ifdef __cplusplus
149}
150#endif
151
152#endif
#define MAX_PATH
Definition: compat.h:34
static const WCHAR version[]
Definition: asmname.c:66
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
GLsizeiptr size
Definition: glext.h:5919
GLbitfield flags
Definition: glext.h:7161
const char * filename
Definition: ioapi.h:137
struct CATALOG_INFO_ CATALOG_INFO
BOOL WINAPI CryptCATCDFClose(CRYPTCATCDF *)
Definition: crypt.c:1234
CRYPTCATMEMBER *WINAPI CryptCATGetMemberInfo(HANDLE, LPWSTR)
Definition: crypt.c:787
CRYPTCATATTRIBUTE *WINAPI CryptCATPutCatAttrInfo(HANDLE catalog, WCHAR *name, DWORD flags, DWORD size, BYTE *data)
Definition: crypt.c:1055
CRYPTCATCDF *WINAPI CryptCATCDFOpen(LPWSTR, PFN_CDF_PARSE_ERROR_CALLBACK)
Definition: crypt.c:1270
HANDLE WINAPI CryptCATOpen(LPWSTR, DWORD, HCRYPTPROV, DWORD, DWORD)
struct CRYPTCATATTRIBUTE_ CRYPTCATATTRIBUTE
BOOL WINAPI CryptCATCatalogInfoFromContext(HCATINFO, CATALOG_INFO *, DWORD)
Definition: crypt.c:1023
BOOL WINAPI CryptCATAdminReleaseCatalogContext(HCATADMIN, HCATINFO, DWORD)
Definition: crypt.c:598
HCATINFO WINAPI CryptCATAdminAddCatalog(HCATADMIN, PWSTR, PWSTR, DWORD)
Definition: crypt.c:207
BOOL WINAPI CryptCATAdminRemoveCatalog(HCATADMIN, LPCWSTR, DWORD)
Definition: crypt.c:665
CRYPTCATATTRIBUTE *WINAPI CryptCATPutAttrInfo(HANDLE catalog, CRYPTCATMEMBER *member, WCHAR *name, DWORD flags, DWORD size, BYTE *data)
Definition: crypt.c:1042
BOOL WINAPI CryptCATAdminCalcHashFromFileHandle(HANDLE, DWORD *, BYTE *, DWORD)
Definition: crypt.c:424
CRYPTCATATTRIBUTE *WINAPI CryptCATGetAttrInfo(HANDLE, CRYPTCATMEMBER *, LPWSTR)
Definition: crypt.c:754
BOOL WINAPI CryptCATPersistStore(HANDLE catalog)
Definition: crypt.c:1081
BOOL WINAPI CryptCATAdminReleaseContext(HCATADMIN, DWORD)
Definition: crypt.c:632
BOOL WINAPI CryptCATAdminAcquireContext(HCATADMIN *, const GUID *, DWORD)
Definition: crypt.c:101
CRYPTCATATTRIBUTE *WINAPI CryptCATCDFEnumCatAttributes(CRYPTCATCDF *, CRYPTCATATTRIBUTE *, PFN_CDF_PARSE_ERROR_CALLBACK)
Definition: crypt.c:1244
HANDLE HCATINFO
Definition: mscat.h:25
struct CRYPTCATMEMBER_ CRYPTCATMEMBER
BOOL WINAPI CryptCATClose(HANDLE)
Definition: crypt.c:730
void(WINAPI * PFN_CDF_PARSE_ERROR_CALLBACK)(DWORD, DWORD, WCHAR *)
Definition: mscat.h:115
HANDLE HCATADMIN
Definition: mscat.h:24
CRYPTCATATTRIBUTE *WINAPI CryptCATEnumerateAttr(HANDLE, CRYPTCATMEMBER *, CRYPTCATATTRIBUTE *)
Definition: crypt.c:805
CRYPTCATMEMBER *WINAPI CryptCATPutMemberInfo(HANDLE catalog, WCHAR *filename, WCHAR *member, GUID *subject, DWORD version, DWORD size, BYTE *data)
Definition: crypt.c:1068
struct CRYPTCATCDF_ CRYPTCATCDF
HCATINFO WINAPI CryptCATAdminEnumCatalogFromHash(HCATADMIN, BYTE *, DWORD, DWORD, HCATINFO *)
Definition: crypt.c:466
CRYPTCATATTRIBUTE *WINAPI CryptCATGetCatAttrInfo(HANDLE, LPWSTR)
Definition: crypt.c:772
BOOL WINAPI CryptCATAdminResolveCatalogPath(HCATADMIN, WCHAR *, CATALOG_INFO *, DWORD)
Definition: crypt.c:707
CRYPTCATATTRIBUTE *WINAPI CryptCATEnumerateCatAttr(HANDLE, CRYPTCATATTRIBUTE *)
Definition: crypt.c:823
BOOL WINAPI CryptCATAdminCalcHashFromFileHandle2(HCATADMIN, HANDLE, DWORD *, BYTE *, DWORD)
Definition: crypt.c:448
LPWSTR WINAPI CryptCATCDFEnumMembersByCDFTagEx(CRYPTCATCDF *, LPWSTR, PFN_CDF_PARSE_ERROR_CALLBACK, CRYPTCATMEMBER **, BOOL, LPVOID)
Definition: crypt.c:1256
CRYPTCATMEMBER *WINAPI CryptCATEnumerateMember(HANDLE, CRYPTCATMEMBER *)
Definition: crypt.c:841
BOOL WINAPI CryptCATAdminAcquireContext2(HCATADMIN *, const GUID *, const WCHAR *, const CERT_STRONG_SIGN_PARA *, DWORD)
Definition: crypt.c:124
#define DWORD
Definition: nt_native.h:44
WCHAR wszCatalogFile[MAX_PATH]
Definition: mscat.h:99
DWORD cbStruct
Definition: mscat.h:98
LPWSTR pwszReferenceTag
Definition: mscat.h:74
BYTE * pbValue
Definition: mscat.h:77
DWORD cbValue
Definition: mscat.h:76
DWORD cbStruct
Definition: mscat.h:73
DWORD dwReserved
Definition: mscat.h:78
DWORD dwAttrTypeAndAction
Definition: mscat.h:75
BOOL fEOF
Definition: mscat.h:108
DWORD dwCurFilePos
Definition: mscat.h:106
HANDLE hCATStore
Definition: mscat.h:110
HANDLE hFile
Definition: mscat.h:105
DWORD dwLastMemberOffset
Definition: mscat.h:107
LPWSTR pwszResultDir
Definition: mscat.h:109
DWORD cbStruct
Definition: mscat.h:104
DWORD dwReserved
Definition: mscat.h:90
CRYPT_ATTR_BLOB sEncodedIndirectData
Definition: mscat.h:92
struct SIP_INDIRECT_DATA_ * pIndirectData
Definition: mscat.h:88
GUID gSubjectType
Definition: mscat.h:86
HANDLE hReserved
Definition: mscat.h:91
DWORD cbStruct
Definition: mscat.h:83
DWORD dwCertVersion
Definition: mscat.h:89
CRYPT_ATTR_BLOB sEncodedMemberInfo
Definition: mscat.h:93
DWORD fdwMemberFlags
Definition: mscat.h:87
LPWSTR pwszFileName
Definition: mscat.h:85
LPWSTR pwszReferenceTag
Definition: mscat.h:84
Definition: name.c:39
uint16_t * PWSTR
Definition: typedefs.h:56
ULONG_PTR HCRYPTPROV
Definition: wincrypt.h:55
#define WINAPI
Definition: msvc.h:6
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
__wchar_t WCHAR
Definition: xmlstorage.h:180
WCHAR * LPWSTR
Definition: xmlstorage.h:184
unsigned char BYTE
Definition: xxhash.c:193