xref: /reactos/dll/win32/acledit/acleditint.h (revision c2c66aff)
1*c2c66affSColin Finck #ifndef _ACLEDIT_H
2*c2c66affSColin Finck #define _ACLEDIT_H
3*c2c66affSColin Finck 
4*c2c66affSColin Finck #include <windef.h>
5*c2c66affSColin Finck 
6*c2c66affSColin Finck extern HINSTANCE hDllInstance;
7*c2c66affSColin Finck 
8*c2c66affSColin Finck typedef struct _ACL_HELP_CONTROL
9*c2c66affSColin Finck {
10*c2c66affSColin Finck   LPWSTR lpHelpFile;
11*c2c66affSColin Finck   DWORD dwMainDialogTopic;
12*c2c66affSColin Finck   DWORD dwACLEditorDialogTopic;
13*c2c66affSColin Finck   DWORD Reserved1;
14*c2c66affSColin Finck   DWORD dwAddEntryDialogTopic;
15*c2c66affSColin Finck   DWORD Reserved2;
16*c2c66affSColin Finck   DWORD Reserved3;
17*c2c66affSColin Finck   DWORD dwAccountDialogTopic;
18*c2c66affSColin Finck } ACL_HELP_CONTROL, *PACL_HELP_CONTROL;
19*c2c66affSColin Finck 
20*c2c66affSColin Finck typedef struct _ACL_DLG_CONTROL
21*c2c66affSColin Finck {
22*c2c66affSColin Finck   UCHAR ucVersion;
23*c2c66affSColin Finck   BOOL bIsContainer;
24*c2c66affSColin Finck   BOOL bAllowNewObject;
25*c2c66affSColin Finck   BOOL bMapSpecificToGeneric;
26*c2c66affSColin Finck   LPDWORD lpdwGenericAccessMap;
27*c2c66affSColin Finck   LPDWORD lpdwGenericMappingNewObjects;
28*c2c66affSColin Finck   LPWSTR lpDialogTitle;
29*c2c66affSColin Finck   PACL_HELP_CONTROL pHelpInfo;
30*c2c66affSColin Finck   LPWSTR lpSubReplaceTitle;
31*c2c66affSColin Finck   LPWSTR lpSubReplaceObjectsTitle;
32*c2c66affSColin Finck   LPWSTR lpSubReplaceConfirmation;
33*c2c66affSColin Finck   LPWSTR lpSpecialAccess;
34*c2c66affSColin Finck   LPWSTR lpSpecialNewAccess;
35*c2c66affSColin Finck } ACL_DLG_CONTROL, *PACL_DLG_CONTROL;
36*c2c66affSColin Finck 
37*c2c66affSColin Finck typedef struct _ACL_EDIT_ENTRY{
38*c2c66affSColin Finck   DWORD dwType;
39*c2c66affSColin Finck   DWORD dwAccessMask;
40*c2c66affSColin Finck   DWORD dwAccessMask1;
41*c2c66affSColin Finck   LPWSTR lpName;
42*c2c66affSColin Finck } ACL_EDIT_ENTRY, *PACL_EDIT_ENTRY;
43*c2c66affSColin Finck 
44*c2c66affSColin Finck typedef struct _ACL_EDIT_CONTROL
45*c2c66affSColin Finck {
46*c2c66affSColin Finck   DWORD dwNumberOfEntries;
47*c2c66affSColin Finck   PACL_EDIT_ENTRY pEntries;
48*c2c66affSColin Finck   LPWSTR lpDefaultPermissionName;
49*c2c66affSColin Finck } ACL_EDIT_CONTROL, *PACL_EDIT_CONTROL;
50*c2c66affSColin Finck 
51*c2c66affSColin Finck typedef DWORD (CALLBACK *PACL_CHANGE)(HWND hWnd,
52*c2c66affSColin Finck                                       HINSTANCE hInstance,
53*c2c66affSColin Finck                                       PVOID pCallbackContext,
54*c2c66affSColin Finck                                       PSECURITY_DESCRIPTOR pNewSD,
55*c2c66affSColin Finck                                       PSECURITY_DESCRIPTOR pNewObjectSD,
56*c2c66affSColin Finck                                       BOOL bApplyToSubContainers,
57*c2c66affSColin Finck                                       BOOL bApplyToSubObjects,
58*c2c66affSColin Finck                                       LPDWORD lpdwChangeContextStatus);
59*c2c66affSColin Finck 
60*c2c66affSColin Finck #endif /* _ACLEDIT_H */
61