Module: wine Branch: master Commit: 7d2fb57725f396d584d477de3b5b94ada2e1ee5e URL: https://source.winehq.org/git/wine.git/?a=commit;h=7d2fb57725f396d584d477de3...
Author: Michael Müller michael@fds-team.de Date: Sun Feb 28 10:27:49 2021 -0600
aclui: Implement EditSecurity().
Signed-off-by: Zebediah Figura z.figura12@gmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/aclui/aclui_main.c | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-)
diff --git a/dlls/aclui/aclui_main.c b/dlls/aclui/aclui_main.c index 24fb32fdb8c..43171d70410 100644 --- a/dlls/aclui/aclui_main.c +++ b/dlls/aclui/aclui_main.c @@ -480,10 +480,32 @@ HPROPSHEETPAGE WINAPI CreateSecurityPage(ISecurityInformation *security) return ret; }
-BOOL WINAPI EditSecurity(HWND owner, LPSECURITYINFO psi) +BOOL WINAPI EditSecurity(HWND owner, ISecurityInformation *security) { - FIXME("(%p, %p): stub\n", owner, psi); - return FALSE; + PROPSHEETHEADERW sheet = {0}; + HPROPSHEETPAGE pages[1]; + SI_OBJECT_INFO info; + BOOL ret; + + TRACE("(%p, %p)\n", owner, security); + + if (FAILED(ISecurityInformation_GetObjectInformation(security, &info))) + return FALSE; + if (!(pages[0] = CreateSecurityPage(security))) + return FALSE; + + sheet.dwSize = sizeof(sheet); + sheet.dwFlags = PSH_DEFAULT; + sheet.hwndParent = owner; + sheet.hInstance = aclui_instance; + sheet.pszCaption = load_formatstr(IDS_PERMISSION_FOR, info.pszObjectName); + sheet.nPages = 1; + sheet.nStartPage = 0; + sheet.phpage = pages; + + ret = PropertySheetW(&sheet) != -1; + LocalFree((void *)sheet.pszCaption); + return ret; }
BOOL WINAPI DllMain(HINSTANCE instance, DWORD reason, void *reserved)