James Hawkins : advapi32: Add tests for LookupAccountSid.
Alexandre Julliard
julliard at wine.codeweavers.com
Fri Jul 7 07:56:01 CDT 2006
Module: wine
Branch: refs/heads/master
Commit: ce58c3589ca98cfaeafb5f2b5e8902732483b315
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=ce58c3589ca98cfaeafb5f2b5e8902732483b315
Author: James Hawkins <truiken at gmail.com>
Date: Wed Jul 5 19:53:52 2006 -0700
advapi32: Add tests for LookupAccountSid.
---
dlls/advapi32/security.c | 12 ++++++------
dlls/advapi32/tests/security.c | 29 +++++++++++++++++++++++++++++
2 files changed, 35 insertions(+), 6 deletions(-)
diff --git a/dlls/advapi32/security.c b/dlls/advapi32/security.c
index 0644f15..0a78668 100644
--- a/dlls/advapi32/security.c
+++ b/dlls/advapi32/security.c
@@ -1485,15 +1485,15 @@ LookupAccountSidA(
domain,domainSize,domainSize?*domainSize:0,
name_use);
- if (accountSize) *accountSize = strlen(ac)+1;
+ *accountSize = strlen(ac)+1;
if (account && (*accountSize > strlen(ac)))
strcpy(account, ac);
- if (domainSize) *domainSize = strlen(dm)+1;
+ *domainSize = strlen(dm)+1;
if (domain && (*domainSize > strlen(dm)))
strcpy(domain,dm);
- if (name_use) *name_use = SidTypeUser;
+ *name_use = SidTypeUser;
return TRUE;
}
@@ -1527,15 +1527,15 @@ LookupAccountSidW(
domain,domainSize,domainSize?*domainSize:0,
name_use);
- if (accountSize) *accountSize = strlenW(ac)+1;
+ *accountSize = strlenW(ac)+1;
if (account && (*accountSize > strlenW(ac)))
strcpyW(account, ac);
- if (domainSize) *domainSize = strlenW(dm)+1;
+ *domainSize = strlenW(dm)+1;
if (domain && (*domainSize > strlenW(dm)))
strcpyW(domain,dm);
- if (name_use) *name_use = SidTypeUser;
+ *name_use = SidTypeUser;
return TRUE;
}
diff --git a/dlls/advapi32/tests/security.c b/dlls/advapi32/tests/security.c
index fe573ea..7c800b9 100644
--- a/dlls/advapi32/tests/security.c
+++ b/dlls/advapi32/tests/security.c
@@ -772,6 +772,34 @@ static void test_token_attr(void)
}
}
+static void test_LookupAccountSid(void)
+{
+ SID_IDENTIFIER_AUTHORITY SIDAuthNT = { SECURITY_NT_AUTHORITY };
+ char account[MAX_PATH], domain[MAX_PATH];
+ DWORD acc_size, dom_size;
+ PSID pUsersSid = NULL;
+ SID_NAME_USE use;
+ BOOL ret;
+
+ /* native windows crashes if account size, domain size, or name use is NULL */
+
+ ret = AllocateAndInitializeSid(&SIDAuthNT, 2, SECURITY_BUILTIN_DOMAIN_RID,
+ DOMAIN_ALIAS_RID_USERS, 0, 0, 0, 0, 0, 0, &pUsersSid);
+ ok(ret, "AllocateAndInitializeSid failed with error %ld\n", GetLastError());
+
+ /* try NULL account */
+ acc_size = MAX_PATH;
+ dom_size = MAX_PATH;
+ ret = LookupAccountSid(NULL, pUsersSid, NULL, &acc_size, domain, &dom_size, &use);
+ ok(ret, "Expected TRUE, got FALSE\n");
+
+ /* try NULL domain */
+ acc_size = MAX_PATH;
+ dom_size = MAX_PATH;
+ ret = LookupAccountSid(NULL, pUsersSid, account, &acc_size, NULL, &dom_size, &use);
+ ok(ret, "Expected TRUE, got FALSE\n");
+}
+
START_TEST(security)
{
init();
@@ -782,4 +810,5 @@ START_TEST(security)
test_FileSecurity();
test_AccessCheck();
test_token_attr();
+ test_LookupAccountSid();
}
More information about the wine-cvs
mailing list