Stub implementations in crypt32 (try 2, I screwed up the linefeeds in the previous, sorry)

Stefan Kristiansson stefan at langante.mine.nu
Sun Nov 2 05:45:37 CST 2003


I had some trouble with an application failing to make calls to
CryptProtectData, so I decided to add the stub implementation for it.

ChangeLog:
    * dlls/crypt32/main.c
    Stubs for CryptProtectData and CryptUnprotectData
    * include/wincrypt.h
    Added typedef for CRYPTPROTECT_PROMPTSTRUCT

Index: wine/dlls/crypt32/crypt32.spec
===================================================================
RCS file: /home/wine/wine/dlls/crypt32/crypt32.spec,v
retrieving revision 1.13
diff -u -r1.13 crypt32.spec
--- wine/dlls/crypt32/crypt32.spec    12 May 2003 03:21:45 -0000    1.13
+++ wine/dlls/crypt32/crypt32.spec    2 Nov 2003 11:02:58 -0000
@@ -132,6 +132,7 @@
 @ stub CryptMsgSignCTL
 @ stub CryptMsgUpdate
 @ stub CryptMsgVerifyCountersignatureEncoded
+@ stdcall CryptProtectData(ptr wstr ptr long ptr long ptr)
 @ stdcall CryptRegisterDefaultOIDFunction(long str long wstr)
 @ stdcall CryptRegisterOIDFunction(long str str wstr str)
 @ stub CryptRegisterOIDInfo
@@ -148,7 +149,7 @@
 @ stub CryptSignHashU
 @ stub CryptSignMessage
 @ stub CryptSignMessageWithKey
-@ stub CryptUnprotectData
+@ stdcall CryptUnprotectData(ptr ptr ptr long ptr long ptr)
 @ stub CryptUnregisterDefaultOIDFunction
 @ stub CryptUnregisterOIDFunction
 @ stub CryptUnregisterOIDInfo
Index: wine/dlls/crypt32/main.c
===================================================================
RCS file: /home/wine/wine/dlls/crypt32/main.c,v
retrieving revision 1.12
diff -u -r1.12 main.c
--- wine/dlls/crypt32/main.c    8 Sep 2003 19:38:49 -0000    1.12
+++ wine/dlls/crypt32/main.c    2 Nov 2003 11:02:58 -0000
@@ -57,6 +57,7 @@
  * (0x1001350, %eax, 0, 0, 9);
  *
  */
+
 BOOL WINAPI CertOpenStore(LPSTR dw1, DWORD dw2, DWORD dw3, DWORD dw4, 
DWORD dw5)
 {
   FIXME("(%s, %ld, %ld, %ld, %ld), stub.\n", debugstr_a(dw1), dw2, dw3, 
dw4, dw5);
@@ -129,3 +130,21 @@
           dwMsgAndCertEncodingType, dwSaveAs, dwSaveTo, pvSaveToPara, 
dwFlags);
     return TRUE;
 }
+
+BOOL WINAPI CryptProtectData(DATA_BLOB* pDataIn, LPCWSTR szDataDescr,
+                             DATA_BLOB* pOptionalEntropy, PVOID 
pvReserved,
+                             CRYPTPROTECT_PROMPTSTRUCT* pPromptStruct,
+                             DWORD dwFlags, DATA_BLOB* pDataOut)
+{
+  FIXME("stub!\n");
+  return FALSE;
+}
+BOOL WINAPI CryptUnprotectData(DATA_BLOB* pDataIn, LPWSTR* ppszDataDescr,
+                               DATA_BLOB* pOptionalEntropy,PVOID 
pvReserved,
+                               CRYPTPROTECT_PROMPTSTRUCT* pPromptStruct,
+                               DWORD dwFlags, DATA_BLOB* pDataOut)
+{
+  FIXME("stub!\n");
+  return FALSE;
+}
+
Index: wine/include/wincrypt.h
===================================================================
RCS file: /home/wine/wine/include/wincrypt.h,v
retrieving revision 1.13
diff -u -r1.13 wincrypt.h
--- wine/include/wincrypt.h    7 Oct 2003 22:52:20 -0000    1.13
+++ wine/include/wincrypt.h    2 Nov 2003 11:02:58 -0000
@@ -49,6 +49,13 @@
   CRYPT_DER_BLOB,      *PCRYPT_DER_BLOB,
   CRYPT_ATTR_BLOB,     *PCRYPT_ATTR_BLOB;
 
+typedef struct _CRYPTPROTECT_PROMPTSTRUCT {
+  DWORD cbSize;
+  DWORD dwPromptFlags;
+  HWND hwndApp;
+  LPCWSTR szPrompt;
+} CRYPTPROTECT_PROMPTSTRUCT, *PCRYPTPROTECT_PROMPTSTRUCT;
+
 typedef struct _CRYPT_ALGORITHM_IDENTIFIER {
   LPSTR            pszObjId;
   CRYPT_OBJID_BLOB Parameters;





More information about the wine-patches mailing list