secur32: make GetComputerObjectNameA use GetComputerObjectNameW
Robert Reif
reif at earthlink.net
Sat Aug 12 09:08:32 CDT 2006
-------------- next part --------------
diff -p -u -r1.19 secur32.c
--- dlls/secur32/secur32.c 23 May 2006 12:48:34 -0000 1.19
+++ dlls/secur32/secur32.c 12 Aug 2006 14:05:56 -0000
@@ -863,8 +863,23 @@ SECURITY_STATUS WINAPI EnumerateSecurity
BOOLEAN WINAPI GetComputerObjectNameA(
EXTENDED_NAME_FORMAT NameFormat, LPSTR lpNameBuffer, PULONG nSize)
{
- FIXME("%d %p %p\n", NameFormat, lpNameBuffer, nSize);
- return FALSE;
+ BOOLEAN rc;
+ LPWSTR bufferW;
+ ULONG sizeW = *nSize * sizeof(WCHAR);
+ TRACE("(%d %p %p)\n", NameFormat, lpNameBuffer, nSize);
+ bufferW = HeapAlloc(GetProcessHeap(), 0, sizeW);
+ if (bufferW == NULL) {
+ SetLastError(ERROR_NOT_ENOUGH_MEMORY);
+ return FALSE;
+ }
+ rc = GetComputerObjectNameW(NameFormat, bufferW, &sizeW);
+ if (rc) {
+ ULONG len = WideCharToMultiByte(CP_ACP, 0, bufferW, -1, NULL, 0, NULL, NULL);
+ WideCharToMultiByte(CP_ACP, 0, bufferW, -1, lpNameBuffer, len, NULL, NULL);
+ *nSize = len;
+ }
+ HeapFree(GetProcessHeap(), 0, bufferW);
+ return rc;
}
/***********************************************************************
@@ -873,7 +888,8 @@ BOOLEAN WINAPI GetComputerObjectNameA(
BOOLEAN WINAPI GetComputerObjectNameW(
EXTENDED_NAME_FORMAT NameFormat, LPWSTR lpNameBuffer, PULONG nSize)
{
- FIXME("%d %p %p\n", NameFormat, lpNameBuffer, nSize);
+ FIXME("(%d %p %p)\n", NameFormat, lpNameBuffer, nSize);
+ SetLastError(ERROR_CANT_ACCESS_DOMAIN_INFO);
return FALSE;
}
More information about the wine-patches
mailing list