117 TRACE(
"(%p, %p, %08x, %08x)\n", store1, store2, unk0,
unk1);
120 FIXME(
"semi-stub\n");
250 TRACE(
"(%p, %p)\n", store, prev);
278 TRACE(
"(%p, %p)\n", store, prev);
306 TRACE(
"(%p, %p)\n", store, prev);
349 DWORD dwCtrlType,
void const *pvCtrlPara)
412 static const WCHAR fmt[] = {
'%',
's',
'\\',
'%',
's',0 };
445 FIXME(
"CERT_SYSTEM_STORE_CURRENT_SERVICE, %s: stub\n",
452 FIXME(
"CERT_SYSTEM_STORE_SERVICES, %s: stub\n",
457 FIXME(
"CERT_SYSTEM_STORE_USERS, %s: stub\n",
470 FIXME(
"CERT_SYSTEM_STORE_LOCAL_MACHINE_ENTERPRISE, %s: stub\n",
596 dwFlags &= ~CERT_SYSTEM_STORE_CURRENT_USER;
719 provInfo.
cbSize =
sizeof(provInfo);
731 TRACE(
"returning %p\n", store);
772 TRACE(
"returning %p\n", store);
800 TRACE(
"returning %p\n", store);
827 switch (
LOWORD(lpszStoreProvider))
872 if (
LOWORD(lpszStoreProvider))
873 FIXME(
"unimplemented type %d\n",
LOWORD(lpszStoreProvider));
892 FIXME(
"unimplemented type %s\n", lpszStoreProvider);
905 LPCSTR szSubSystemProtocol)
907 if (!szSubSystemProtocol)
919 if (!szSubSystemProtocol)
933 TRACE(
"(%p, %p)\n", hCertStore, pPrev);
991 TRACE(
"found matching CRL, not adding\n");
1008 TRACE(
"existing CRL is newer, not adding\n");
1029 TRACE(
"existing CRL is newer, not adding\n");
1106 TRACE(
"(%p, %p)\n", hCertStore, pPrev);
1120 TRACE(
"(%p)\n", hCertStore);
1150 DWORD dwCtrlType,
void const *pvCtrlPara)
1155 TRACE(
"(%p, %08x, %d, %p)\n", hCertStore,
dwFlags, dwCtrlType,
1269 void *pvSystemStoreLocationPara,
HKEY *
key)
1274 TRACE(
"(%08x, %p)\n",
dwFlags, pvSystemStoreLocationPara);
1290 FIXME(
"CERT_SYSTEM_STORE_CURRENT_SERVICE\n");
1296 FIXME(
"CERT_SYSTEM_STORE_SERVICES\n");
1300 FIXME(
"CERT_SYSTEM_STORE_USERS\n");
1312 FIXME(
"CERT_SYSTEM_STORE_LOCAL_MACHINE_ENTERPRISE\n");
1329 TRACE(
"(%08x, %p, %p, %p)\n",
dwFlags, pvSystemStoreLocationPara, pvArg,
1346 }
while (
ret && !rc);
1365 FIXME(
"(%p, %08x, %p, %p): stub\n", pvSystemStore,
dwFlags, pvArg,
1378 FIXME(
"(%p, %08x, %s, %p, %p): stub\n", pvSystemStore,
dwFlags,
1422 FIXME(
"(%p, %08x): flag not supported\n", pvSystemStore,
dwFlags);
1440 TRACE(
"(%p)\n", store);
1445 TRACE(
"(%p)\n", store);
1470 TRACE(
"(%p, %p)\n", store, prev);
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
void newer(int argc, const char *argv[])
static void list_remove(struct list_entry *entry)
static int list_empty(struct list_entry *head)
static void list_add_head(struct list_entry *head, struct list_entry *entry)
static void list_init(struct list_entry *head)
#define RegCloseKey(hKey)
BOOL WINAPI CertAddStoreToCollection(HCERTSTORE hCollectionStore, HCERTSTORE hSiblingStore, DWORD dwUpdateFlags, DWORD dwPriority)
WINECRYPT_CERTSTORE * CRYPT_CollectionOpenStore(HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara)
const void *(WINAPI * EnumContextsInStoreFunc)(HCERTSTORE hCertStore, const void *pPrevContext)
static void * context_ptr(context_t *context)
enum _CertStoreType CertStoreType
WINECRYPT_CERTSTORE * CRYPT_ProvOpenStore(LPCSTR lpszStoreProvider, DWORD dwEncodingType, HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara) DECLSPEC_HIDDEN
BOOL(WINAPI * SerializeElementFunc)(const void *context, DWORD dwFlags, BYTE *pbElement, DWORD *pcbElement)
WINECRYPT_CERTSTORE * CRYPT_FileNameOpenStoreW(HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara) DECLSPEC_HIDDEN
BOOL CRYPT_ReadSerializedStoreFromBlob(const CRYPT_DATA_BLOB *blob, HCERTSTORE store) DECLSPEC_HIDDEN
void ContextPropertyList_Free(CONTEXT_PROPERTY_LIST *list) DECLSPEC_HIDDEN
static crl_t * crl_from_ptr(const CRL_CONTEXT *ptr)
void CRYPT_ImportSystemRootCertsToReg(void) DECLSPEC_HIDDEN
BOOL ContextPropertyList_FindProperty(CONTEXT_PROPERTY_LIST *list, DWORD id, PCRYPT_DATA_BLOB blob) DECLSPEC_HIDDEN
struct WINE_CRYPTCERTSTORE *(* StoreOpenFunc)(HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara)
#define WINE_CRYPTCERTSTORE_MAGIC
BOOL(WINAPI * AddContextToStoreFunc)(HCERTSTORE hCertStore, const void *context, DWORD dwAddDisposition, const void **ppStoreContext)
BOOL(WINAPI * GetContextPropertyFunc)(const void *context, DWORD dwPropID, void *pvData, DWORD *pcbData)
static context_t * context_from_ptr(const void *ptr)
BOOL ContextPropertyList_SetProperty(CONTEXT_PROPERTY_LIST *list, DWORD id, const BYTE *pbData, size_t cbData) DECLSPEC_HIDDEN
WINECRYPT_CERTSTORE * CRYPT_FileNameOpenStoreA(HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara) DECLSPEC_HIDDEN
BOOL(WINAPI * SetContextPropertyFunc)(const void *context, DWORD dwPropID, DWORD dwFlags, const void *pvData)
void ContextPropertyList_RemoveProperty(CONTEXT_PROPERTY_LIST *list, DWORD id) DECLSPEC_HIDDEN
static cert_t * cert_from_ptr(const CERT_CONTEXT *ptr)
WINECRYPT_CERTSTORE * CRYPT_ProvCreateStore(DWORD dwFlags, WINECRYPT_CERTSTORE *memStore, const CERT_STORE_PROV_INFO *pProvInfo) DECLSPEC_HIDDEN
WINECRYPT_CERTSTORE * CRYPT_FileOpenStore(HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara) DECLSPEC_HIDDEN
const void *(WINAPI * CreateContextFunc)(DWORD dwCertEncodingType, const BYTE *pbCertEncoded, DWORD cbCertEncoded)
BOOL(WINAPI * DeleteContextFunc)(const void *contex)
WINECRYPT_CERTSTORE * CRYPT_RegOpenStore(HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara) DECLSPEC_HIDDEN
DWORD(WINAPI * EnumPropertiesFunc)(const void *context, DWORD dwPropId)
CONTEXT_PROPERTY_LIST * ContextPropertyList_Create(void) DECLSPEC_HIDDEN
BOOL(WINAPI * AddEncodedContextToStoreFunc)(HCERTSTORE hCertStore, DWORD dwCertEncodingType, const BYTE *pbEncoded, DWORD cbEncoded, DWORD dwAddDisposition, const void **ppContext)
LONG WINAPI RegCreateKeyExW(_In_ HKEY hKey, _In_ LPCWSTR lpSubKey, _In_ DWORD Reserved, _In_opt_ LPWSTR lpClass, _In_ DWORD dwOptions, _In_ REGSAM samDesired, _In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes, _Out_ PHKEY phkResult, _Out_opt_ LPDWORD lpdwDisposition)
LONG WINAPI RegOpenKeyExW(HKEY hKey, LPCWSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult)
LONG WINAPI RegEnumKeyExW(_In_ HKEY hKey, _In_ DWORD dwIndex, _Out_ LPWSTR lpName, _Inout_ LPDWORD lpcbName, _Reserved_ LPDWORD lpReserved, _Out_opt_ LPWSTR lpClass, _Inout_opt_ LPDWORD lpcbClass, _Out_opt_ PFILETIME lpftLastWriteTime)
BOOL WINAPI CryptReleaseContext(HCRYPTPROV hProv, DWORD dwFlags)
BOOL WINAPI CertAddCertificateContextToStore(HCERTSTORE hCertStore, PCCERT_CONTEXT pCertContext, DWORD dwAddDisposition, PCCERT_CONTEXT *ppStoreContext)
PCCERT_CONTEXT WINAPI CertCreateCertificateContext(DWORD dwCertEncodingType, const BYTE *pbCertEncoded, DWORD cbCertEncoded)
BOOL WINAPI CertAddEncodedCertificateToStore(HCERTSTORE hCertStore, DWORD dwCertEncodingType, const BYTE *pbCertEncoded, DWORD cbCertEncoded, DWORD dwAddDisposition, PCCERT_CONTEXT *ppCertContext)
BOOL WINAPI CertSetCertificateContextProperty(PCCERT_CONTEXT pCertContext, DWORD dwPropId, DWORD dwFlags, const void *pvData)
BOOL WINAPI CertGetCertificateContextProperty(PCCERT_CONTEXT pCertContext, DWORD dwPropId, void *pvData, DWORD *pcbData)
DWORD WINAPI CertEnumCertificateContextProperties(PCCERT_CONTEXT pCertContext, DWORD dwPropId)
void Context_AddRef(context_t *context)
void Context_Release(context_t *context)
void Context_Free(context_t *context)
void Context_CopyProperties(const void *to, const void *from)
BOOL WINAPI CertGetCRLContextProperty(PCCRL_CONTEXT pCRLContext, DWORD dwPropId, void *pvData, DWORD *pcbData)
DWORD WINAPI CertEnumCRLContextProperties(PCCRL_CONTEXT pCRLContext, DWORD dwPropId)
BOOL WINAPI CertFreeCRLContext(PCCRL_CONTEXT pCrlContext)
BOOL WINAPI CertSetCRLContextProperty(PCCRL_CONTEXT pCRLContext, DWORD dwPropId, DWORD dwFlags, const void *pvData)
PCCRL_CONTEXT WINAPI CertDuplicateCRLContext(PCCRL_CONTEXT pCrlContext)
PCCRL_CONTEXT WINAPI CertFindCRLInStore(HCERTSTORE hCertStore, DWORD dwCertEncodingType, DWORD dwFindFlags, DWORD dwFindType, const void *pvFindPara, PCCRL_CONTEXT pPrevCrlContext)
BOOL WINAPI CertAddEncodedCRLToStore(HCERTSTORE hCertStore, DWORD dwCertEncodingType, const BYTE *pbCrlEncoded, DWORD cbCrlEncoded, DWORD dwAddDisposition, PCCRL_CONTEXT *ppCrlContext)
PCCRL_CONTEXT WINAPI CertCreateCRLContext(DWORD dwCertEncodingType, const BYTE *pbCrlEncoded, DWORD cbCrlEncoded)
PCCTL_CONTEXT WINAPI CertEnumCTLsInStore(HCERTSTORE hCertStore, PCCTL_CONTEXT pPrev)
PCCTL_CONTEXT WINAPI CertCreateCTLContext(DWORD dwMsgAndCertEncodingType, const BYTE *pbCtlEncoded, DWORD cbCtlEncoded)
BOOL WINAPI CertDeleteCTLFromStore(PCCTL_CONTEXT pCtlContext)
BOOL WINAPI CertSetCTLContextProperty(PCCTL_CONTEXT pCTLContext, DWORD dwPropId, DWORD dwFlags, const void *pvData)
DWORD WINAPI CertEnumCTLContextProperties(PCCTL_CONTEXT pCTLContext, DWORD dwPropId)
BOOL WINAPI CertGetCTLContextProperty(PCCTL_CONTEXT pCTLContext, DWORD dwPropId, void *pvData, DWORD *pcbData)
BOOL WINAPI CertAddEncodedCTLToStore(HCERTSTORE hCertStore, DWORD dwMsgAndCertEncodingType, const BYTE *pbCtlEncoded, DWORD cbCtlEncoded, DWORD dwAddDisposition, PCCTL_CONTEXT *ppCtlContext)
BOOL WINAPI CertAddCTLContextToStore(HCERTSTORE hCertStore, PCCTL_CONTEXT pCtlContext, DWORD dwAddDisposition, PCCTL_CONTEXT *ppStoreContext)
LPVOID WINAPI CryptMemAlloc(ULONG cbSize)
VOID WINAPI CryptMemFree(LPVOID pv)
HCRYPTMSG WINAPI CryptMsgOpenToDecode(DWORD dwMsgEncodingType, DWORD dwFlags, DWORD dwMsgType, HCRYPTPROV_LEGACY hCryptProv, PCERT_INFO pRecipientInfo, PCMSG_STREAM_INFO pStreamInfo)
BOOL WINAPI CryptMsgGetParam(HCRYPTMSG hCryptMsg, DWORD dwParamType, DWORD dwIndex, void *pvData, DWORD *pcbData)
BOOL WINAPI CryptMsgUpdate(HCRYPTMSG hCryptMsg, const BYTE *pbData, DWORD cbData, BOOL fFinal)
HCRYPTMSG WINAPI CryptMsgDuplicate(HCRYPTMSG hCryptMsg)
BOOL WINAPI CryptMsgClose(HCRYPTMSG hCryptMsg)
static context_t * EmptyStore_enum(WINECRYPT_CERTSTORE *store, context_t *prev)
BOOL WINAPI CertAddCRLContextToStore(HCERTSTORE hCertStore, PCCRL_CONTEXT pCrlContext, DWORD dwAddDisposition, PCCRL_CONTEXT *ppStoreContext)
static WINECRYPT_CERTSTORE * CRYPT_SysOpenStoreW(HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara)
static DWORD MemStore_release(WINECRYPT_CERTSTORE *cert_store, DWORD flags)
static WINECRYPT_CERTSTORE * CRYPT_PKCSOpenStore(HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara)
static void * msgProvFuncs[]
static WINECRYPT_CERTSTORE * CRYPT_SysRegOpenStoreW(HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara)
static context_t * MemStore_enumCRL(WINECRYPT_CERTSTORE *store, context_t *prev)
BOOL WINAPI CertRegisterSystemStore(const void *pvSystemStore, DWORD dwFlags, PCERT_SYSTEM_STORE_INFO pStoreInfo, void *pvReserved)
static void EmptyStore_addref(WINECRYPT_CERTSTORE *store)
void CRYPT_InitStore(WINECRYPT_CERTSTORE *store, DWORD dwFlags, CertStoreType type, const store_vtbl_t *vtbl)
HCERTSTORE WINAPI CertOpenStore(LPCSTR lpszStoreProvider, DWORD dwMsgAndCertEncodingType, HCRYPTPROV_LEGACY hCryptProv, DWORD dwFlags, const void *pvPara)
BOOL WINAPI I_CertUpdateStore(HCERTSTORE store1, HCERTSTORE store2, DWORD unk0, DWORD unk1)
static context_t * MemStore_enumContext(WINE_MEMSTORE *store, struct list *list, context_t *prev)
static WINECRYPT_CERTSTORE * CRYPT_SerializedOpenStore(HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara)
void CRYPT_FreeStore(WINECRYPT_CERTSTORE *store)
BOOL WINAPI CertSetStoreProperty(HCERTSTORE hCertStore, DWORD dwPropId, DWORD dwFlags, const void *pvData)
static const WINE_CONTEXT_INTERFACE gCertInterface
static const store_vtbl_t MemStoreVtbl
static const store_vtbl_t EmptyStoreVtbl
static DWORD EmptyStore_release(WINECRYPT_CERTSTORE *store, DWORD flags)
static WINECRYPT_CERTSTORE * CRYPT_PhysOpenStoreW(HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara)
static BOOL MemStore_addCTL(WINECRYPT_CERTSTORE *store, context_t *ctl, context_t *toReplace, context_t **ppStoreContext, BOOL use_link)
static BOOL EmptyStore_add(WINECRYPT_CERTSTORE *store, context_t *context, context_t *replace, context_t **ret_context, BOOL use_link)
BOOL WINAPI CertRegisterPhysicalStore(const void *pvSystemStore, DWORD dwFlags, LPCWSTR pwszStoreName, PCERT_PHYSICAL_STORE_INFO pStoreInfo, void *pvReserved)
const WINE_CONTEXT_INTERFACE * pCTLInterface
BOOL WINAPI CertControlStore(HCERTSTORE hCertStore, DWORD dwFlags, DWORD dwCtrlType, void const *pvCtrlPara)
const WINE_CONTEXT_INTERFACE * pCertInterface
static WINECRYPT_CERTSTORE * CRYPT_MemOpenStore(HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara)
static BOOL MemStore_addCRL(WINECRYPT_CERTSTORE *store, context_t *crl, context_t *toReplace, context_t **ppStoreContext, BOOL use_link)
static BOOL MemStore_deleteCRL(WINECRYPT_CERTSTORE *store, context_t *context)
static void MemStore_releaseContext(WINECRYPT_CERTSTORE *store, context_t *context)
struct _WINE_MEMSTORE WINE_MEMSTORE
BOOL WINAPI CertEnumPhysicalStore(const void *pvSystemStore, DWORD dwFlags, void *pvArg, PFN_CERT_ENUM_PHYSICAL_STORE pfnEnum)
static WINECRYPT_CERTSTORE * CRYPT_SysOpenStoreA(HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara)
HCERTSTORE WINAPI CertDuplicateStore(HCERTSTORE hCertStore)
static WINECRYPT_CERTSTORE * CRYPT_SysRegOpenStoreA(HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara)
static void WINAPI CRYPT_MsgCloseStore(HCERTSTORE hCertStore, DWORD dwFlags)
static void MemStore_addref(WINECRYPT_CERTSTORE *store)
BOOL WINAPI CertEnumSystemStore(DWORD dwFlags, void *pvSystemStoreLocationPara, void *pvArg, PFN_CERT_ENUM_SYSTEM_STORE pfnEnum)
static BOOL MemStore_control(WINECRYPT_CERTSTORE *store, DWORD dwFlags, DWORD dwCtrlType, void const *pvCtrlPara)
BOOL WINAPI CertUnregisterPhysicalStore(const void *pvSystemStore, DWORD dwFlags, LPCWSTR pwszStoreName)
static const WINE_CONTEXT_INTERFACE gCTLInterface
BOOL WINAPI CertDeleteCRLFromStore(PCCRL_CONTEXT pCrlContext)
static BOOL EmptyStore_delete(WINECRYPT_CERTSTORE *store, context_t *context)
BOOL WINAPI CertUnregisterSystemStore(const void *pvSystemStore, DWORD dwFlags)
const WINE_CONTEXT_INTERFACE * pCRLInterface
static BOOL MemStore_deleteContext(WINE_MEMSTORE *store, context_t *context)
void init_empty_store(void)
static BOOL MemStore_deleteCert(WINECRYPT_CERTSTORE *store, context_t *context)
static WINECRYPT_CERTSTORE * CRYPT_MsgOpenStore(HCRYPTPROV hCryptProv, DWORD dwFlags, const void *pvPara)
static context_t * MemStore_enumCert(WINECRYPT_CERTSTORE *store, context_t *prev)
static void free_contexts(struct list *list)
static const WCHAR rootW[]
static BOOL MemStore_deleteCTL(WINECRYPT_CERTSTORE *store, context_t *context)
static LONG CRYPT_OpenParentStore(DWORD dwFlags, void *pvSystemStoreLocationPara, HKEY *key)
static BOOL MemStore_addCert(WINECRYPT_CERTSTORE *store, context_t *cert, context_t *toReplace, context_t **ppStoreContext, BOOL use_link)
PCCRL_CONTEXT WINAPI CertEnumCRLsInStore(HCERTSTORE hCertStore, PCCRL_CONTEXT pPrev)
static const WINE_CONTEXT_INTERFACE gCRLInterface
PCCERT_CONTEXT WINAPI CertEnumCertificatesInStore(HCERTSTORE hCertStore, PCCERT_CONTEXT pPrev)
HCERTSTORE WINAPI CertOpenSystemStoreA(HCRYPTPROV_LEGACY hProv, LPCSTR szSubSystemProtocol)
WINECRYPT_CERTSTORE empty_store
static BOOL MemStore_addContext(WINE_MEMSTORE *store, struct list *list, context_t *orig_context, context_t *existing, context_t **ret_context, BOOL use_link)
BOOL WINAPI CertCloseStore(HCERTSTORE hCertStore, DWORD dwFlags)
static void EmptyStore_releaseContext(WINECRYPT_CERTSTORE *store, context_t *context)
BOOL WINAPI CertGetStoreProperty(HCERTSTORE hCertStore, DWORD dwPropId, void *pvData, DWORD *pcbData)
static context_t * MemStore_enumCTL(WINECRYPT_CERTSTORE *store, context_t *prev)
static BOOL EmptyStore_control(WINECRYPT_CERTSTORE *store, DWORD flags, DWORD ctrl_type, void const *ctrl_para)
BOOL WINAPI CertDeleteCertificateFromStore(PCCERT_CONTEXT pCertContext)
HCERTSTORE WINAPI CertOpenSystemStoreW(HCRYPTPROV_LEGACY hProv, LPCWSTR szSubSystemProtocol)
#define ERROR_CALL_NOT_IMPLEMENTED
#define ERROR_NO_MORE_ITEMS
#define MultiByteToWideChar
LONG WINAPI CompareFileTime(IN CONST FILETIME *lpFileTime1, IN CONST FILETIME *lpFileTime2)
int WINAPI lstrcmpiW(LPCWSTR str1, LPCWSTR str2)
GLuint GLuint GLsizei count
GLuint GLuint GLsizei GLenum type
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLenum GLuint GLenum GLsizei const GLchar * buf
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble * u
#define memcpy(s1, s2, n)
#define ERROR_FILE_NOT_FOUND
static LPCSTR DWORD void * pvReserved
#define REG_OPENED_EXISTING_KEY
#define STATUS_ACCESS_VIOLATION
static unsigned __int64 next
INT replace(TCHAR source[MAX_PATH], TCHAR dest[MAX_PATH], DWORD dwFlags, BOOL *doMore)
#define LIST_FOR_EACH_ENTRY_SAFE(cursor, cursor2, list, type, field)
__WINE_SERVER_LIST_INLINE struct list * list_next(const struct list *list, const struct list *elem)
BOOL WINAPI CertSerializeCRLStoreElement(PCCRL_CONTEXT pCrlContext, DWORD dwFlags, BYTE *pbElement, DWORD *pcbElement)
BOOL WINAPI CertSerializeCTLStoreElement(PCCTL_CONTEXT pCtlContext, DWORD dwFlags, BYTE *pbElement, DWORD *pcbElement)
BOOL WINAPI CertSerializeCertificateStoreElement(PCCERT_CONTEXT pCertContext, DWORD dwFlags, BYTE *pbElement, DWORD *pcbElement)
const store_vtbl_t * vtbl
CONTEXT_PROPERTY_LIST * properties
void ** rgpvStoreProvFunc
HCERTSTOREPROV hStoreProv
BOOL(* delete)(struct WINE_CRYPTCERTSTORE *, context_t *)
context_t *(* enumContext)(struct WINE_CRYPTCERTSTORE *store, context_t *prev)
BOOL(* addContext)(struct WINE_CRYPTCERTSTORE *, context_t *, context_t *, context_t **, BOOL)
DWORD_PTR Spare[8/sizeof(DWORD_PTR)]
PCRITICAL_SECTION_DEBUG DebugInfo
DeleteContextFunc deleteFromStore
AddContextToStoreFunc addContextToStore
EnumContextsInStoreFunc enumContextsInStore
const context_vtbl_t * vtbl
struct _context_t *(* clone)(context_t *, struct WINE_CRYPTCERTSTORE *, BOOL)
DWORD(* release)(struct WINE_CRYPTCERTSTORE *, DWORD)
void(* addref)(struct WINE_CRYPTCERTSTORE *)
BOOL(* control)(struct WINE_CRYPTCERTSTORE *, DWORD, DWORD, void const *)
VOID WINAPI InitializeCriticalSection(OUT LPCRITICAL_SECTION lpCriticalSection)
DWORD WINAPI GetLastError(void)
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
void WINAPI DeleteCriticalSection(PCRITICAL_SECTION)
_In_ DWORD dwMsgAndCertEncodingType
#define sz_CERT_STORE_PROV_SERIALIZED
_In_ PCCRL_CONTEXT pCrlContext
#define CERT_STORE_PROV_PKCS7
#define sz_CERT_STORE_PROV_FILENAME_W
#define CERT_STORE_PROV_COLLECTION
#define CERT_PHYSICAL_STORE_ADD_ENABLE_FLAG
ULONG_PTR HCRYPTPROV_LEGACY
#define CERT_STORE_ADD_REPLACE_EXISTING
#define CERT_STORE_ADD_NEWER_INHERIT_PROPERTIES
#define CERT_STORE_PROV_FILENAME_A
#define CERT_SYSTEM_STORE_SERVICES
#define sz_CERT_STORE_PROV_COLLECTION
#define sz_CERT_STORE_PROV_MEMORY
#define CMSG_CRYPT_RELEASE_CONTEXT_FLAG
#define sz_CERT_STORE_PROV_SYSTEM_REGISTRY
#define CERT_STORE_OPEN_EXISTING_FLAG
#define CERT_STORE_ADD_NEWER
_In_ PCCERT_CONTEXT _In_ DWORD dwAddDisposition
#define CERT_STORE_CREATE_NEW_FLAG
#define sz_CERT_STORE_PROV_SYSTEM
#define CERT_CLOSE_STORE_CHECK_FLAG
#define CERT_SYSTEM_STORE_RELOCATE_FLAG
BOOL(WINAPI * PFN_CERT_ENUM_SYSTEM_STORE)(_In_ const void *pvSystemStore, _In_ DWORD dwFlags, _In_ PCERT_SYSTEM_STORE_INFO pStoreInfo, _Reserved_ void *pvReserved, _Inout_opt_ void *pvArg)
#define CERT_STORE_PROV_SERIALIZED
#define CERT_SYSTEM_STORE_LOCATION_MASK
#define CERT_STORE_PROV_SYSTEM_REGISTRY_W
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
#define CERT_STORE_PROV_FILENAME_W
#define CERT_STORE_PROV_SYSTEM_A
#define CERT_SYSTEM_STORE_CURRENT_SERVICE
#define X509_ASN_ENCODING
#define CERT_SYSTEM_STORE_USERS
#define sz_CERT_STORE_PROV_PKCS7
#define CERT_STORE_PROV_MEMORY
#define CERT_STORE_PROV_REG
#define CERT_STORE_PROV_FILE
#define CERT_SYSTEM_STORE_LOCAL_MACHINE_ENTERPRISE
#define CERT_STORE_PROV_MSG
#define CERT_ACCESS_STATE_PROP_ID
static const WCHAR CERT_LOCAL_MACHINE_SYSTEM_STORE_REGPATH[]
#define CERT_SYSTEM_STORE_LOCAL_MACHINE
#define CERT_STORE_ADD_USE_EXISTING
_In_ PCCERT_CONTEXT _In_ DWORD _Outptr_opt_ PCCERT_CONTEXT * ppStoreContext
BOOL(WINAPI * PFN_CERT_ENUM_PHYSICAL_STORE)(_In_ const void *pvSystemStore, _In_ DWORD dwFlags, _In_ LPCWSTR pwszStoreName, _In_ PCERT_PHYSICAL_STORE_INFO pStoreInfo, _Reserved_ void *pvReserved, _Inout_opt_ void *pvArg)
#define CERT_ACCESS_STATE_WRITE_PERSIST_FLAG
#define CERT_STORE_ADD_NEW
_In_ PCCERT_CONTEXT pCertContext
#define CERT_STORE_ADD_ALWAYS
#define CERT_STORE_PROV_SYSTEM_W
static const WCHAR CERT_GROUP_POLICY_SYSTEM_STORE_REGPATH[]
#define CERT_STORE_NO_CRYPT_RELEASE_FLAG
#define CERT_SYSTEM_STORE_CURRENT_USER
#define CERT_STORE_PROV_SYSTEM_REGISTRY_A
#define PKCS_7_ASN_ENCODING
#define CERT_SYSTEM_STORE_CURRENT_USER_GROUP_POLICY
_In_ DWORD _Out_writes_bytes_to_opt_ pcbData void _Inout_ DWORD * pcbData
#define CERT_STORE_DELETE_FLAG
#define CERT_STORE_PROV_PHYSICAL_W
#define CERT_STORE_READONLY_FLAG
#define CMSG_CERT_COUNT_PARAM
#define CMSG_CRL_COUNT_PARAM
#define CERT_SYSTEM_STORE_LOCAL_MACHINE_GROUP_POLICY
#define CERT_STORE_ADD_REPLACE_EXISTING_INHERIT_PROPERTIES
#define CRL_FIND_EXISTING
_In_ ULONG _In_opt_ PVOID pvData
#define CRYPT_E_NOT_FOUND
#define ERROR_FILE_EXISTS
#define CRYPT_E_INVALID_MSG_TYPE
#define CRYPT_E_PENDING_CLOSE
#define HKEY_LOCAL_MACHINE
#define HKEY_CURRENT_USER
int WINAPIV wsprintfW(_Out_ LPWSTR, _In_ _Printf_format_string_ LPCWSTR,...)