From f8167f01bcb78d47dc59d5988ae069c8e917c682 Mon Sep 17 00:00:00 2001 From: Mike McCormack Date: Mon, 9 Aug 2004 22:55:47 +0000 Subject: [PATCH] Implement A->W call for SetNamedSecurityInfo. --- dlls/advapi32/security.c | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/dlls/advapi32/security.c b/dlls/advapi32/security.c index bac1d4454dd..67466219061 100644 --- a/dlls/advapi32/security.c +++ b/dlls/advapi32/security.c @@ -1546,9 +1546,27 @@ DWORD WINAPI SetNamedSecurityInfoA(LPSTR pObjectName, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, PSID psidOwner, PSID psidGroup, PACL pDacl, PACL pSacl) { - FIXME("%s %d %ld %p %p %p %p\n", debugstr_a(pObjectName), ObjectType, + DWORD len; + LPWSTR wstr = NULL; + DWORD r; + + TRACE("%s %d %ld %p %p %p %p\n", debugstr_a(pObjectName), ObjectType, SecurityInfo, psidOwner, psidGroup, pDacl, pSacl); - return ERROR_CALL_NOT_IMPLEMENTED; + + if( pObjectName ) + { + len = MultiByteToWideChar( CP_ACP, 0, pObjectName, -1, NULL, 0 ); + wstr = HeapAlloc( GetProcessHeap(), 0, len*sizeof(WCHAR)); + MultiByteToWideChar( CP_ACP, 0, pObjectName, -1, wstr, len ); + } + + r = SetNamedSecurityInfoW( wstr, ObjectType, SecurityInfo, psidOwner, + psidGroup, pDacl, pSacl ); + + if( wstr ) + HeapFree( GetProcessHeap(), 0, wstr ); + + return r; } /******************************************************************************