Paul Vriens : crypt32: Added some input validation.

Alexandre Julliard julliard at wine.codeweavers.com
Fri Sep 8 10:24:46 CDT 2006


Module: wine
Branch: master
Commit: 8840ef3327f3bdb56bc5a1804095fda2fe6848ac
URL:    http://source.winehq.org/git/?p=wine.git;a=commit;h=8840ef3327f3bdb56bc5a1804095fda2fe6848ac

Author: Paul Vriens <Paul.Vriens at xs4all.nl>
Date:   Fri Sep  8 13:18:46 2006 +0200

crypt32: Added some input validation.

---

 dlls/crypt32/main.c |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

diff --git a/dlls/crypt32/main.c b/dlls/crypt32/main.c
index 28f63c8..86b9cf4 100644
--- a/dlls/crypt32/main.c
+++ b/dlls/crypt32/main.c
@@ -181,8 +181,17 @@ BOOL WINAPI CryptSIPAddProvider(SIP_ADD_
 
     TRACE("%p\n", psNewProv);
 
-    if( !psNewProv )
+    if (!psNewProv ||
+        psNewProv->cbStruct != sizeof(SIP_ADD_NEWPROVIDER) ||
+        !psNewProv->pwszGetFuncName ||
+        !psNewProv->pwszPutFuncName ||
+        !psNewProv->pwszCreateFuncName ||
+        !psNewProv->pwszVerifyFuncName ||
+        !psNewProv->pwszRemoveFuncName)
+    {
+        SetLastError(ERROR_INVALID_PARAMETER);
         return FALSE;
+    }
 
     TRACE("%s %s %s %s\n",
           debugstr_guid( psNewProv->pgSubject ),




More information about the wine-cvs mailing list