user32: Some apps pass a color bitmap as a mask to CreateIconIndirect, convert it...
[wine] / dlls / wintrust / crypt.c
1 /*
2  * WinTrust Cryptography functions
3  *
4  * Copyright 2006 James Hawkins
5  *
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.
10  *
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.
15  *
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
19  */
20
21 #include <stdarg.h>
22
23 #include "windef.h"
24 #include "winbase.h"
25 #include "wintrust.h"
26 #include "mscat.h"
27 #include "mssip.h"
28
29 #include "wine/debug.h"
30
31 WINE_DEFAULT_DEBUG_CHANNEL(wintrust);
32
33 /***********************************************************************
34  *      CryptCATAdminAcquireContext (WINTRUST.@)
35  *
36  * Get a catalog administrator context handle.
37  *
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.
42  *
43  * RETURNS
44  *   Success: TRUE. catAdmin contains the context handle.
45  *   Failure: FAIL.
46  *
47  */
48 BOOL WINAPI CryptCATAdminAcquireContext(HCATADMIN* catAdmin,
49                     const GUID *sysSystem, DWORD dwFlags )
50 {
51     FIXME("%p %s %x\n", catAdmin, debugstr_guid(sysSystem), dwFlags);
52     SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
53     return FALSE;
54 }
55
56 /***********************************************************************
57  *             CryptCATAdminCalcHashFromFileHandle (WINTRUST.@)
58  */
59 BOOL WINAPI CryptCATAdminCalcHashFromFileHandle(HANDLE hFile, DWORD* pcbHash,
60                                                 BYTE* pbHash, DWORD dwFlags )
61 {
62     FIXME("%p %p %p %x\n", hFile, pcbHash, pbHash, dwFlags);
63     SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
64     return FALSE;
65 }
66
67 /***********************************************************************
68  *             CryptCATAdminEnumCatalogFromHash (WINTRUST.@)
69  */
70 HCATINFO WINAPI CryptCATAdminEnumCatalogFromHash(HCATADMIN hCatAdmin,
71                                                  BYTE* pbHash,
72                                                  DWORD cbHash,
73                                                  DWORD dwFlags,
74                                                  HCATINFO* phPrevCatInfo )
75 {
76     FIXME("%p %p %d %d %p\n", hCatAdmin, pbHash, cbHash, dwFlags, phPrevCatInfo);
77     SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
78     return NULL;
79 }
80
81 /***********************************************************************
82  *      CryptCATAdminReleaseContext (WINTRUST.@)
83  *
84  * Release a catalog administrator context handle.
85  *
86  * PARAMS
87  *   catAdmin  [I] Pointer to the context handle.
88  *   dwFlags   [I] Reserved.
89  *
90  * RETURNS
91  *   Success: TRUE.
92  *   Failure: FAIL.
93  *
94  */
95 BOOL WINAPI CryptCATAdminReleaseContext(HCATADMIN hCatAdmin, DWORD dwFlags )
96 {
97     FIXME("%p %x\n", hCatAdmin, dwFlags);
98     SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
99     return FALSE;
100 }
101
102 /***********************************************************************
103  *      CryptCATClose  (WINTRUST.@)
104  */
105 BOOL WINAPI CryptCATClose(HANDLE hCatalog)
106 {
107     FIXME("(%p) stub\n", hCatalog);
108     return TRUE;
109 }
110
111 /***********************************************************************
112  *      CryptCATEnumerateMember  (WINTRUST.@)
113  */
114 CRYPTCATMEMBER *WINAPI CryptCATEnumerateMember(HANDLE hCatalog, CRYPTCATMEMBER* pPrevMember)
115 {
116     FIXME("(%p, %p) stub\n", hCatalog, pPrevMember);
117     return NULL;
118 }
119
120 /***********************************************************************
121  *      CryptCATOpen  (WINTRUST.@)
122  */
123 HANDLE WINAPI CryptCATOpen(LPWSTR pwszFileName, DWORD fdwOpenFlags, HCRYPTPROV hProv,
124                            DWORD dwPublicVersion, DWORD dwEncodingType)
125 {
126     FIXME("(%s, %d, %ld, %d, %d) stub\n", debugstr_w(pwszFileName), fdwOpenFlags,
127           hProv, dwPublicVersion, dwEncodingType);
128     return 0;
129 }
130
131 /***********************************************************************
132  *      CryptSIPCreateIndirectData  (WINTRUST.@)
133  */
134 BOOL WINAPI CryptSIPCreateIndirectData(SIP_SUBJECTINFO* pSubjectInfo, DWORD* pcbIndirectData,
135                                        SIP_INDIRECT_DATA* pIndirectData)
136 {
137     FIXME("(%p %p %p) stub\n", pSubjectInfo, pcbIndirectData, pIndirectData);
138  
139     return FALSE;
140 }
141
142 /***********************************************************************
143  *      CryptSIPGetSignedDataMsg  (WINTRUST.@)
144  */
145 BOOL WINAPI CryptSIPGetSignedDataMsg(SIP_SUBJECTINFO* pSubjectInfo, DWORD* pdwEncodingType,
146                                        DWORD dwIndex, DWORD* pcbSignedDataMsg, BYTE* pbSignedDataMsg)
147 {
148     FIXME("(%p %p %d %p %p) stub\n", pSubjectInfo, pdwEncodingType, dwIndex,
149           pcbSignedDataMsg, pbSignedDataMsg);
150  
151     return FALSE;
152 }
153
154 /***********************************************************************
155  *      CryptSIPPutSignedDataMsg  (WINTRUST.@)
156  */
157 BOOL WINAPI CryptSIPPutSignedDataMsg(SIP_SUBJECTINFO* pSubjectInfo, DWORD pdwEncodingType,
158                                        DWORD* pdwIndex, DWORD cbSignedDataMsg, BYTE* pbSignedDataMsg)
159 {
160     FIXME("(%p %d %p %d %p) stub\n", pSubjectInfo, pdwEncodingType, pdwIndex,
161           cbSignedDataMsg, pbSignedDataMsg);
162  
163     return FALSE;
164 }
165
166 /***********************************************************************
167  *      CryptSIPRemoveSignedDataMsg  (WINTRUST.@)
168  */
169 BOOL WINAPI CryptSIPRemoveSignedDataMsg(SIP_SUBJECTINFO* pSubjectInfo,
170                                        DWORD dwIndex)
171 {
172     FIXME("(%p %d) stub\n", pSubjectInfo, dwIndex);
173  
174     return FALSE;
175 }
176
177 /***********************************************************************
178  *      CryptSIPVerifyIndirectData  (WINTRUST.@)
179  */
180 BOOL WINAPI CryptSIPVerifyIndirectData(SIP_SUBJECTINFO* pSubjectInfo,
181                                        SIP_INDIRECT_DATA* pIndirectData)
182 {
183     FIXME("(%p %p) stub\n", pSubjectInfo, pIndirectData);
184  
185     return FALSE;
186 }