FreeRDP
cert.c
1 
20 #include <winpr/config.h>
21 
22 #include <winpr/crypto.h>
23 
151 #include <winpr/crt.h>
152 #include <winpr/wincrypt.h>
153 
154 #ifndef _WIN32
155 
156 #include "crypto.h"
157 
158 HCERTSTORE CertOpenStore(LPCSTR lpszStoreProvider, DWORD dwMsgAndCertEncodingType,
159  HCRYPTPROV_LEGACY hCryptProv, DWORD dwFlags, const void* pvPara)
160 {
161  WINPR_CERTSTORE* certstore = NULL;
162 
163  certstore = (WINPR_CERTSTORE*)calloc(1, sizeof(WINPR_CERTSTORE));
164 
165  if (certstore)
166  {
167  certstore->lpszStoreProvider = lpszStoreProvider;
168  certstore->dwMsgAndCertEncodingType = dwMsgAndCertEncodingType;
169  }
170 
171  return (HCERTSTORE)certstore;
172 }
173 
174 HCERTSTORE CertOpenSystemStoreW(HCRYPTPROV_LEGACY hProv, LPCWSTR szSubsystemProtocol)
175 {
176  HCERTSTORE hCertStore = NULL;
177 
178  hCertStore = CertOpenStore(CERT_STORE_PROV_FILE, X509_ASN_ENCODING, hProv, 0, NULL);
179 
180  return hCertStore;
181 }
182 
183 HCERTSTORE CertOpenSystemStoreA(HCRYPTPROV_LEGACY hProv, LPCSTR szSubsystemProtocol)
184 {
185  return CertOpenSystemStoreW(hProv, NULL);
186 }
187 
188 BOOL CertCloseStore(HCERTSTORE hCertStore, DWORD dwFlags)
189 {
190  WINPR_CERTSTORE* certstore = NULL;
191 
192  certstore = (WINPR_CERTSTORE*)hCertStore;
193 
194  free(certstore);
195 
196  return TRUE;
197 }
198 
199 PCCERT_CONTEXT CertFindCertificateInStore(HCERTSTORE hCertStore, DWORD dwCertEncodingType,
200  DWORD dwFindFlags, DWORD dwFindType,
201  const void* pvFindPara, PCCERT_CONTEXT pPrevCertContext)
202 {
203  return (PCCERT_CONTEXT)1;
204 }
205 
206 PCCERT_CONTEXT CertEnumCertificatesInStore(HCERTSTORE hCertStore, PCCERT_CONTEXT pPrevCertContext)
207 {
208  return (PCCERT_CONTEXT)NULL;
209 }
210 
211 DWORD CertGetNameStringW(PCCERT_CONTEXT pCertContext, DWORD dwType, DWORD dwFlags, void* pvTypePara,
212  LPWSTR pszNameString, DWORD cchNameString)
213 {
214  return 0;
215 }
216 
217 DWORD CertGetNameStringA(PCCERT_CONTEXT pCertContext, DWORD dwType, DWORD dwFlags, void* pvTypePara,
218  LPSTR pszNameString, DWORD cchNameString)
219 {
220  return 0;
221 }
222 
223 #endif