LsaOpenPolicy return success
Andriy Palamarchuk
apa3a at yahoo.com
Tue Sep 17 10:35:03 CDT 2002
Some Lsa* functionality is partially implemented. This
patch allows applications to "successfully open" the
LSA Policy handle and use implemented functionality or
fail later if the functionality is not implemented.
Changelog:
LsaOpenPolicy return success.
__________________________________________________
Do you Yahoo!?
Yahoo! News - Today's headlines
http://news.yahoo.com
-------------- next part --------------
--- dlls/advapi32/security.c.orig Tue Sep 17 11:14:42 2002
+++ dlls/advapi32/security.c Tue Sep 17 11:32:58 2002
@@ -49,6 +49,42 @@
}
}
+/************************************************************
+ * ADVAPI_IsLocalComputer
+ *
+ * Checks whether the server name indicates local machine.
+ */
+BOOL ADVAPI_IsLocalComputer(LPCWSTR ServerName)
+{
+ if (!ServerName)
+ {
+ return TRUE;
+ }
+ else
+ {
+ DWORD dwSize = MAX_COMPUTERNAME_LENGTH + 1;
+ BOOL Result;
+ LPWSTR buf;
+
+ buf = HeapAlloc(GetProcessHeap(), 0, dwSize * sizeof(WCHAR));
+ Result = GetComputerNameW(buf, &dwSize);
+ if (Result && (ServerName[0] == '\\') && (ServerName[1] == '\\'))
+ ServerName += 2;
+ Result = Result && !lstrcmpW(ServerName, buf);
+ HeapFree(GetProcessHeap(), 0, buf);
+
+ return Result;
+ }
+}
+
+#define ADVAPI_ForceLocalComputer(ServerName, FailureCode) \
+ if (!ADVAPI_IsLocalComputer(ServerName)) \
+ { \
+ FIXME("Action Implemented for local computer only. " \
+ "Requested for server %s\n", debugstr_w(ServerName)); \
+ return FailureCode; \
+ }
+
/* ##############################
###### TOKEN FUNCTIONS ######
##############################
@@ -802,9 +838,11 @@
FIXME("(%s,%p,0x%08lx,%p):stub\n",
SystemName?debugstr_w(SystemName->Buffer):"null",
ObjectAttributes, DesiredAccess, PolicyHandle);
+ ADVAPI_ForceLocalComputer(SystemName ? SystemName->Buffer : NULL,
+ STATUS_ACCESS_VIOLATION);
dumpLsaAttributes(ObjectAttributes);
if(PolicyHandle) *PolicyHandle = (LSA_HANDLE)0xcafe;
- return TRUE;
+ return STATUS_SUCCESS;
}
/******************************************************************************
More information about the wine-patches
mailing list