[PATCH] advapi32: Make CheckTokenMembership return FALSE for asking whether we are connected through the network
Maarten Lankhorst
maarten at codeweavers.com
Tue Oct 14 13:16:14 CDT 2008
---
dlls/advapi32/security.c | 21 +++++++++++++++++----
1 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/dlls/advapi32/security.c b/dlls/advapi32/security.c
index ca26217..5a2b3e4 100644
--- a/dlls/advapi32/security.c
+++ b/dlls/advapi32/security.c
@@ -615,10 +615,23 @@ BOOL WINAPI
CheckTokenMembership( HANDLE TokenHandle, PSID SidToCheck,
PBOOL IsMember )
{
- FIXME("(%p %p %p) stub!\n", TokenHandle, SidToCheck, IsMember);
-
- *IsMember = TRUE;
- return(TRUE);
+ WCHAR *sid = NULL;
+ WCHAR network[] = { 'S','-','1','-','5','-','2',0};
+ BOOL ret = TRUE;
+ FIXME("(%p %p %p) stub!\n", TokenHandle, SidToCheck, IsMember);
+
+ ConvertSidToStringSidW(SidToCheck, &sid);
+ FIXME("Sid: %s\n", debugstr_w(sid));
+ /* We are not connected through the network in any way, but locally
+ * Internet Explorer 7 installer checks for it and bombs out if
+ * we return TRUE on asking whether we are
+ */
+ if (sid && !lstrcmpW(sid, network))
+ ret = FALSE;
+ LocalFree(sid);
+
+ *IsMember = ret;
+ return TRUE;
}
/******************************************************************************
--
1.5.6.5
--------------070807000101040402000403--
More information about the wine-patches
mailing list