Module: wine Branch: refs/heads/master Commit: 473ad39dcba386ff38ccd44bed84fc0a9c70f6ad URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=473ad39dcba386ff38ccd44b...
Author: Mike McCormack mike@codeweavers.com Date: Sun Jun 4 19:41:37 2006 +0900
advapi32: Implement and test SystemFunction031.
---
dlls/advapi32/advapi32.spec | 2 +- dlls/advapi32/tests/crypt_lmhash.c | 28 ++++++++++++++++++---------- 2 files changed, 19 insertions(+), 11 deletions(-)
diff --git a/dlls/advapi32/advapi32.spec b/dlls/advapi32/advapi32.spec index 3b1828a..f9285ca 100644 --- a/dlls/advapi32/advapi32.spec +++ b/dlls/advapi32/advapi32.spec @@ -625,7 +625,7 @@ # @ stub StopTraceW @ stub SystemFunction028 @ stub SystemFunction029 @ stdcall SystemFunction030(ptr ptr) -@ stub SystemFunction031 +@ stdcall SystemFunction031(ptr ptr) SystemFunction030 @ stdcall SystemFunction032(ptr ptr) @ stub SystemFunction033 @ stub SystemFunction034 diff --git a/dlls/advapi32/tests/crypt_lmhash.c b/dlls/advapi32/tests/crypt_lmhash.c index 1618cf8..847f3b0 100644 --- a/dlls/advapi32/tests/crypt_lmhash.c +++ b/dlls/advapi32/tests/crypt_lmhash.c @@ -79,7 +79,10 @@ descrypt pSystemFunction025; descrypt pSystemFunction026; descrypt pSystemFunction027;
-fnSystemFunction030 pSystemFunction030; +typedef int (WINAPI *memcmpfunc)(unsigned char *, unsigned char *); +memcmpfunc pSystemFunction030; +memcmpfunc pSystemFunction031; + fnSystemFunction032 pSystemFunction032;
static void test_SystemFunction006(void) @@ -476,37 +479,40 @@ static void test_SystemFunction_dec32(de ok( !memcmp( output, des_plaintext, sizeof des_plaintext), "plaintext wrong (%d)\n", num); }
-static void test_SystemFunction030(void) +static void test_memcmpfunc(memcmpfunc fn) { unsigned char arg1[0x20], arg2[0x20]; int r;
- /* r = pSystemFunction030(NULL, NULL); - crashes */ + if (!fn) + return; + + /* r = fn(NULL, NULL); - crashes */
memset(arg1, 0, sizeof arg1); memset(arg2, 0, sizeof arg2); arg1[0x10] = 1;
- r = pSystemFunction030(arg1, arg2); + r = fn(arg1, arg2); ok( r == 1, "wrong error code\n");
memset(arg1, 1, sizeof arg1); memset(arg2, 1, sizeof arg2); arg1[0x10] = 0;
- r = pSystemFunction030(arg1, arg2); + r = fn(arg1, arg2); ok( r == 1, "wrong error code\n");
memset(arg1, 0, sizeof arg1); memset(arg2, 1, sizeof arg2);
- r = pSystemFunction030(arg1, arg2); + r = fn(arg1, arg2); ok( r == 0, "wrong error code\n");
memset(arg1, 1, sizeof arg1); memset(arg2, 0, sizeof arg2);
- r = pSystemFunction030(arg1, arg2); + r = fn(arg1, arg2); ok( r == 0, "wrong error code\n"); }
@@ -590,9 +596,11 @@ START_TEST(crypt_lmhash) test_SystemFunction_dec32(pSystemFunction025, 25); test_SystemFunction_dec32(pSystemFunction027, 27);
- pSystemFunction030 = (fnSystemFunction030)GetProcAddress( module, "SystemFunction030" ); - if (pSystemFunction030) - test_SystemFunction030(); + pSystemFunction030 = (memcmpfunc) GetProcAddress( module, "SystemFunction030" ); + pSystemFunction031 = (memcmpfunc) GetProcAddress( module, "SystemFunction031" ); + + test_memcmpfunc(pSystemFunction030); + test_memcmpfunc(pSystemFunction031);
pSystemFunction032 = (fnSystemFunction032)GetProcAddress( module, "SystemFunction032" ); if (pSystemFunction032)