include: Add missing definitions to shlobj.h.
[wine/multimedia.git] / dlls / wintrust / crypt.c
blob9a1ecdb095974f6cb24a424227317035edf844ad
1 /*
2 * WinTrust Cryptography functions
4 * Copyright 2006 James Hawkins
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
21 #include <stdarg.h>
23 #include "windef.h"
24 #include "winbase.h"
25 #include "wintrust.h"
26 #include "mscat.h"
27 #include "mssip.h"
29 #include "wine/debug.h"
31 WINE_DEFAULT_DEBUG_CHANNEL(wintrust);
33 /***********************************************************************
34 * CryptCATAdminAcquireContext (WINTRUST.@)
36 * Get a catalog administrator context handle.
38 * PARAMS
39 * catAdmin [O] Pointer to the context handle.
40 * sysSystem [I] Pointer to a GUID for the needed subsystem.
41 * dwFlags [I] Reserved.
43 * RETURNS
44 * Success: TRUE. catAdmin contains the context handle.
45 * Failure: FALSE.
48 BOOL WINAPI CryptCATAdminAcquireContext(HCATADMIN* catAdmin,
49 const GUID *sysSystem, DWORD dwFlags )
51 FIXME("%p %s %x\n", catAdmin, debugstr_guid(sysSystem), dwFlags);
53 if (catAdmin) *catAdmin = (HCATADMIN)0xdeadbeef;
54 return TRUE;
57 /***********************************************************************
58 * CryptCATAdminAddCatalog (WINTRUST.@)
60 BOOL WINAPI CryptCATAdminAddCatalog(HCATADMIN catAdmin, WCHAR *catalogFile,
61 WCHAR *selectBaseName, DWORD flags)
63 FIXME("%p %s %s %d\n", catAdmin, debugstr_w(catalogFile),
64 debugstr_w(selectBaseName), flags);
65 return TRUE;
68 /***********************************************************************
69 * CryptCATAdminCalcHashFromFileHandle (WINTRUST.@)
71 BOOL WINAPI CryptCATAdminCalcHashFromFileHandle(HANDLE hFile, DWORD* pcbHash,
72 BYTE* pbHash, DWORD dwFlags )
74 FIXME("%p %p %p %x\n", hFile, pcbHash, pbHash, dwFlags);
76 if (pbHash && pcbHash) memset(pbHash, 0, *pcbHash);
77 return TRUE;
80 /***********************************************************************
81 * CryptCATAdminEnumCatalogFromHash (WINTRUST.@)
83 HCATINFO WINAPI CryptCATAdminEnumCatalogFromHash(HCATADMIN hCatAdmin,
84 BYTE* pbHash,
85 DWORD cbHash,
86 DWORD dwFlags,
87 HCATINFO* phPrevCatInfo )
89 FIXME("%p %p %d %d %p\n", hCatAdmin, pbHash, cbHash, dwFlags, phPrevCatInfo);
90 return NULL;
93 /***********************************************************************
94 * CryptCATAdminReleaseCatalogContext (WINTRUST.@)
96 * Release a catalog context handle.
98 * PARAMS
99 * hCatAdmin [I] Context handle.
100 * hCatInfo [I] Catalog handle.
101 * dwFlags [I] Reserved.
103 * RETURNS
104 * Success: TRUE.
105 * Failure: FAIL.
108 BOOL WINAPI CryptCATAdminReleaseCatalogContext(HCATADMIN hCatAdmin,
109 HCATADMIN hCatInfo,
110 DWORD dwFlags)
112 FIXME("%p %p %x\n", hCatAdmin, hCatInfo, dwFlags);
113 return TRUE;
116 /***********************************************************************
117 * CryptCATAdminReleaseContext (WINTRUST.@)
119 * Release a catalog administrator context handle.
121 * PARAMS
122 * catAdmin [I] Context handle.
123 * dwFlags [I] Reserved.
125 * RETURNS
126 * Success: TRUE.
127 * Failure: FAIL.
130 BOOL WINAPI CryptCATAdminReleaseContext(HCATADMIN hCatAdmin, DWORD dwFlags )
132 FIXME("%p %x\n", hCatAdmin, dwFlags);
133 return TRUE;
136 /***********************************************************************
137 * CryptCATAdminRemoveCatalog (WINTRUST.@)
139 * Remove a catalog file.
141 * PARAMS
142 * catAdmin [I] Context handle.
143 * pwszCatalogFile [I] Catalog file.
144 * dwFlags [I] Reserved.
146 * RETURNS
147 * Success: TRUE.
148 * Failure: FALSE.
151 BOOL WINAPI CryptCATAdminRemoveCatalog(HCATADMIN hCatAdmin, LPCWSTR pwszCatalogFile, DWORD dwFlags)
153 FIXME("%p %s %x\n", hCatAdmin, debugstr_w(pwszCatalogFile), dwFlags);
154 return DeleteFileW(pwszCatalogFile);
157 /***********************************************************************
158 * CryptCATClose (WINTRUST.@)
160 BOOL WINAPI CryptCATClose(HANDLE hCatalog)
162 FIXME("(%p) stub\n", hCatalog);
163 return TRUE;
166 /***********************************************************************
167 * CryptCATEnumerateMember (WINTRUST.@)
169 CRYPTCATMEMBER *WINAPI CryptCATEnumerateMember(HANDLE hCatalog, CRYPTCATMEMBER* pPrevMember)
171 FIXME("(%p, %p) stub\n", hCatalog, pPrevMember);
172 return NULL;
175 /***********************************************************************
176 * CryptCATOpen (WINTRUST.@)
178 HANDLE WINAPI CryptCATOpen(LPWSTR pwszFileName, DWORD fdwOpenFlags, HCRYPTPROV hProv,
179 DWORD dwPublicVersion, DWORD dwEncodingType)
181 FIXME("(%s, %d, %ld, %d, %d) stub\n", debugstr_w(pwszFileName), fdwOpenFlags,
182 hProv, dwPublicVersion, dwEncodingType);
183 return 0;
186 /***********************************************************************
187 * CryptSIPCreateIndirectData (WINTRUST.@)
189 BOOL WINAPI CryptSIPCreateIndirectData(SIP_SUBJECTINFO* pSubjectInfo, DWORD* pcbIndirectData,
190 SIP_INDIRECT_DATA* pIndirectData)
192 FIXME("(%p %p %p) stub\n", pSubjectInfo, pcbIndirectData, pIndirectData);
194 return FALSE;
197 /***********************************************************************
198 * CryptSIPGetSignedDataMsg (WINTRUST.@)
200 BOOL WINAPI CryptSIPGetSignedDataMsg(SIP_SUBJECTINFO* pSubjectInfo, DWORD* pdwEncodingType,
201 DWORD dwIndex, DWORD* pcbSignedDataMsg, BYTE* pbSignedDataMsg)
203 FIXME("(%p %p %d %p %p) stub\n", pSubjectInfo, pdwEncodingType, dwIndex,
204 pcbSignedDataMsg, pbSignedDataMsg);
206 return FALSE;
209 /***********************************************************************
210 * CryptSIPPutSignedDataMsg (WINTRUST.@)
212 BOOL WINAPI CryptSIPPutSignedDataMsg(SIP_SUBJECTINFO* pSubjectInfo, DWORD pdwEncodingType,
213 DWORD* pdwIndex, DWORD cbSignedDataMsg, BYTE* pbSignedDataMsg)
215 FIXME("(%p %d %p %d %p) stub\n", pSubjectInfo, pdwEncodingType, pdwIndex,
216 cbSignedDataMsg, pbSignedDataMsg);
218 return FALSE;
221 /***********************************************************************
222 * CryptSIPRemoveSignedDataMsg (WINTRUST.@)
224 BOOL WINAPI CryptSIPRemoveSignedDataMsg(SIP_SUBJECTINFO* pSubjectInfo,
225 DWORD dwIndex)
227 FIXME("(%p %d) stub\n", pSubjectInfo, dwIndex);
229 return FALSE;
232 /***********************************************************************
233 * CryptSIPVerifyIndirectData (WINTRUST.@)
235 BOOL WINAPI CryptSIPVerifyIndirectData(SIP_SUBJECTINFO* pSubjectInfo,
236 SIP_INDIRECT_DATA* pIndirectData)
238 FIXME("(%p %p) stub\n", pSubjectInfo, pIndirectData);
240 return FALSE;