Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEarnie Boyd <earnie@users.sf.net>2001-12-03 22:59:34 +0300
committerEarnie Boyd <earnie@users.sf.net>2001-12-03 22:59:34 +0300
commit6dfcb5a3a9bb858d36c9ab0545ac5ea8726897ba (patch)
tree8022cf0bf4134927b9c484a71d204b8e390f0d37 /winsup/w32api/include/accctrl.h
parent2a50e3df6f78914a051398e2a3b46882cfe0df27 (diff)
2001-12-03 Earnie Boyd <earnie@users.sf.net>
* include/accctrl.h: Change \r\n to \n. 2001-11-30 Danny Smith <dannysmith@users.sourceforge.net> * include/ipexport.h (IP_UNIDIRECTIONAL_ADAPTER_ADDRESS): Add structure definition. * include/iptypes.h (IP_PER_ADAPTER_INFO): Ditto. * include/iphlpapi.h (AddIPAddress,CreateProxyArpEntry, DeleteIPAddress,DeleteProxyArpEntry,EnableRouter, FlushIpNetTable,GetAdapterIndex,GetPerAdapterInfo, GetUniDirectionalAdapterInfo,SendARP,SetAdapterIpAddress, UnenableRouter) Declare functions. * lib/iphlpapi.def: Add function names to import lib. 2001-11-24 Danny Smith <dannysmith@users.sourceforge.net> * include/winnt.h (PACCESS_MASK): Add typedef. * include/aclapi.h: New file. * include/acctrl.h: New file. * lib/advapi32.def: Add missing symbols. * lib/test.c: Add #include <aclapi.h>. 2001-11-23 Danny Smith <dannysmith@users.sourceforge.net> * include/winbase.h (OSVERSIONINFO[AW],VER_PLATFORM_WIN32s, VER_PLATFORM_WIN32_WINDOWS,VER_PLATFORM_WIN32_NT): Move from here ... * include/winnt.h: ... to here. * include/winbase.h (VerifyVersionInfo[AW]): Add declaration. * include/winnt.h (OSVERSIONINFOEX[AW]): Add structure definitions and typedefs. (VER_NT_WORKSTATION,VER_NT_DOMAIN_CONTROLLER,VER_NT_SERVER): Add defines. 2001-11-19 Pierre Muller <muller@ics.u-strasbg.fr> * w32api/include/winnt.h: prepare SSE register support. (CONTEXT_EXTENDED_REGISTERS): Add new define. (MAXIMUM_SUPPORTED_EXTENSION): New define. (struct CONTEXT): ExtendedRegisters field added. 2001-11-16 Danny Smith <dannysmith@users.sourceforge.net> * include/winuser.h (tagALTTABINFO, tagCOMBOBOXINFO, tagCURSORINFO, tagMENUBARINFO, tagMENUINFO, tagMONITORINFO tagSCROLLBARINFO, tagTITLEBARINFO. tagWINDOWINFO, tagLASTINPUTINFO ): Define new structures. (EndMenu, GetAltTabInfo[AW],GetComboBoxInfo,GetCursorInfo, GetLastInputInfo, GetListBoxInfo, GetMenuBarInfo, GetMonitorInfo[AW], GetScrollBarInfo, GetTitleBarInfo, GetWindowInfo, GetWindowModuleFileName[AW],GetMenuInfo SetMenuInfo): Add new prototypes. * lib/user32.def: Add import stubs for above functions. * include/winuser.h (IDC_STATIC): Protect against prior definition. 2001-11-12 Corinna Vinschen <corinna@vinschen.de> * include/winbase.h (OSVERSIONINFOEX): Add definition. * include/winnt.h: Add VER_NT_* and VER_SUITE_* defines. 2001-11-10 Robert Collins <rbtcollins@hotmail.com> * include/winnt.h: Add Danny Smith's text comment about gcc compiler warnings with _AUTHORITY #defines. 2001-11-09 Robert Collins <rbtcollins@hotmail.com> * include/winnt.h (GetCurrentFiber): Create a prototype before the implementation; (GetFiberData): Ditto. 2001-11-09 Robert Collins <rbtcollins@hotmail.com> * include/winnt.h: Backout last change.
Diffstat (limited to 'winsup/w32api/include/accctrl.h')
-rw-r--r--winsup/w32api/include/accctrl.h312
1 files changed, 312 insertions, 0 deletions
diff --git a/winsup/w32api/include/accctrl.h b/winsup/w32api/include/accctrl.h
new file mode 100644
index 000000000..3db42795b
--- /dev/null
+++ b/winsup/w32api/include/accctrl.h
@@ -0,0 +1,312 @@
+#ifndef _ACCCRTL_H
+#define _ACCCRTL_H
+#include <wtypes.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define AccFree LocalFree
+#define ACTRL_RESERVED 0x00000000
+#define ACTRL_ACCESS_PROTECTED 0x00000001
+#define ACTRL_ACCESS_ALLOWED 0x00000001
+#define ACTRL_ACCESS_DENIED 0x00000002
+#define ACTRL_AUDIT_SUCCESS 0x00000004
+#define ACTRL_AUDIT_FAILURE 0x00000008
+#define ACTRL_SYSTEM_ACCESS 0x04000000
+#define ACTRL_DELETE 0x08000000
+#define ACTRL_READ_CONTROL 0x10000000
+#define ACTRL_CHANGE_ACCESS 0x20000000
+#define ACTRL_CHANGE_OWNER 0x40000000
+#define ACTRL_SYNCHRONIZE 0x80000000
+#define ACTRL_STD_RIGHTS_ALL 0xf8000000
+
+#define ACTRL_FILE_READ 0x00000001
+#define ACTRL_FILE_WRITE 0x00000002
+#define ACTRL_FILE_APPEND 0x00000004
+#define ACTRL_FILE_READ_PROP 0x00000008
+#define ACTRL_FILE_WRITE_PROP 0x00000010
+#define ACTRL_FILE_EXECUTE 0x00000020
+#define ACTRL_FILE_READ_ATTRIB 0x00000080
+#define ACTRL_FILE_WRITE_ATTRIB 0x00000100
+#define ACTRL_FILE_CREATE_PIPE 0x00000200
+#define ACTRL_DIR_LIST 0x00000001
+#define ACTRL_DIR_CREATE_OBJECT 0x00000002
+#define ACTRL_DIR_CREATE_CHILD 0x00000004
+#define ACTRL_DIR_DELETE_CHILD 0x00000040
+#define ACTRL_DIR_TRAVERSE 0x00000020
+#define ACTRL_KERNEL_TERMINATE 0x00000001
+#define ACTRL_KERNEL_THREAD 0x00000002
+#define ACTRL_KERNEL_VM 0x00000004
+#define ACTRL_KERNEL_VM_READ 0x00000008
+#define ACTRL_KERNEL_VM_WRITE 0x00000010
+#define ACTRL_KERNEL_DUP_HANDLE 0x00000020
+#define ACTRL_KERNEL_PROCESS 0x00000040
+#define ACTRL_KERNEL_SET_INFO 0x00000080
+#define ACTRL_KERNEL_GET_INFO 0x00000100
+#define ACTRL_KERNEL_CONTROL 0x00000200
+#define ACTRL_KERNEL_ALERT 0x00000400
+#define ACTRL_KERNEL_GET_CONTEXT 0x00000800
+#define ACTRL_KERNEL_SET_CONTEXT 0x00001000
+#define ACTRL_KERNEL_TOKEN 0x00002000
+#define ACTRL_KERNEL_IMPERSONATE 0x00004000
+#define ACTRL_KERNEL_DIMPERSONATE 0x00008000
+#define ACTRL_PRINT_SADMIN 0x00000001
+#define ACTRL_PRINT_SLIST 0x00000002
+#define ACTRL_PRINT_PADMIN 0x00000004
+#define ACTRL_PRINT_PUSE 0x00000008
+#define ACTRL_PRINT_JADMIN 0x00000010
+#define ACTRL_SVC_GET_INFO 0x00000001
+#define ACTRL_SVC_SET_INFO 0x00000002
+#define ACTRL_SVC_STATUS 0x00000004
+#define ACTRL_SVC_LIST 0x00000008
+#define ACTRL_SVC_START 0x00000010
+#define ACTRL_SVC_STOP 0x00000020
+#define ACTRL_SVC_PAUSE 0x00000040
+#define ACTRL_SVC_INTERROGATE 0x00000080
+#define ACTRL_SVC_UCONTROL 0x00000100
+#define ACTRL_REG_QUERY 0x00000001
+#define ACTRL_REG_SET 0x00000002
+#define ACTRL_REG_CREATE_CHILD 0x00000004
+#define ACTRL_REG_LIST 0x00000008
+#define ACTRL_REG_NOTIFY 0x00000010
+#define ACTRL_REG_LINK 0x00000020
+#define ACTRL_WIN_CLIPBRD 0x00000001
+#define ACTRL_WIN_GLOBAL_ATOMS 0x00000002
+#define ACTRL_WIN_CREATE 0x00000004
+#define ACTRL_WIN_LIST_DESK 0x00000008
+#define ACTRL_WIN_LIST 0x00000010
+#define ACTRL_WIN_READ_ATTRIBS 0x00000020
+#define ACTRL_WIN_WRITE_ATTRIBS 0x00000040
+#define ACTRL_WIN_SCREEN 0x00000080
+#define ACTRL_WIN_EXIT 0x00000100
+#define ACTRL_ACCESS_NO_OPTIONS 0x00000000
+#define ACTRL_ACCESS_SUPPORTS_OBJECT_ENTRIES 0x00000001
+#define ACCCTRL_DEFAULT_PROVIDERA "Windows NT Access Provider"
+#define ACCCTRL_DEFAULT_PROVIDERW L"Windows NT Access Provider"
+#define TRUSTEE_ACCESS_ALLOWED 0x00000001L
+#define TRUSTEE_ACCESS_READ 0x00000002L
+#define TRUSTEE_ACCESS_WRITE 0x00000004L
+#define TRUSTEE_ACCESS_EXPLICIT 0x00000001L
+#define TRUSTEE_ACCESS_READ_WRITE (TRUSTEE_ACCESS_READ | TRUSTEE_ACCESS_WRITE)
+#define TRUSTEE_ACCESS_ALL 0xFFFFFFFFL
+#define NO_INHERITANCE 0x0
+#define SUB_OBJECTS_ONLY_INHERIT 0x1
+#define SUB_CONTAINERS_ONLY_INHERIT 0x2
+#define SUB_CONTAINERS_AND_OBJECTS_INHERIT 0x3
+#define INHERIT_NO_PROPAGATE 0x4
+#define INHERIT_ONLY 0x8
+#define INHERITED_ACCESS_ENTRY 0x10
+#define INHERITED_PARENT 0x10000000
+#define INHERITED_GRANDPARENT 0x20000000
+
+typedef ULONG INHERIT_FLAGS, *PINHERIT_FLAGS;
+typedef ULONG ACCESS_RIGHTS, *PACCESS_RIGHTS;
+
+typedef enum _ACCESS_MODE {
+ NOT_USED_ACCESS = 0,
+ GRANT_ACCESS,
+ SET_ACCESS,
+ DENY_ACCESS,
+ REVOKE_ACCESS,
+ SET_AUDIT_SUCCESS,
+ SET_AUDIT_FAILURE
+} ACCESS_MODE;
+typedef enum _SE_OBJECT_TYPE {
+ SE_UNKNOWN_OBJECT_TYPE = 0,
+ SE_FILE_OBJECT,
+ SE_SERVICE,
+ SE_PRINTER,
+ SE_REGISTRY_KEY,
+ SE_LMSHARE,
+ SE_KERNEL_OBJECT,
+ SE_WINDOW_OBJECT,
+ SE_DS_OBJECT,
+ SE_DS_OBJECT_ALL,
+ SE_PROVIDER_DEFINED_OBJECT,
+ SE_WMIGUID_OBJECT
+} SE_OBJECT_TYPE;
+typedef enum _TRUSTEE_TYPE {
+ TRUSTEE_IS_UNKNOWN,
+ TRUSTEE_IS_USER,
+ TRUSTEE_IS_GROUP,
+ TRUSTEE_IS_DOMAIN,
+ TRUSTEE_IS_ALIAS,
+ TRUSTEE_IS_WELL_KNOWN_GROUP,
+ TRUSTEE_IS_DELETED,
+ TRUSTEE_IS_INVALID,
+ TRUSTEE_IS_COMPUTER
+} TRUSTEE_TYPE;
+typedef enum _TRUSTEE_FORM {
+ TRUSTEE_IS_SID,
+ TRUSTEE_IS_NAME,
+ TRUSTEE_BAD_FORM,
+ TRUSTEE_IS_OBJECTS_AND_SID,
+ TRUSTEE_IS_OBJECTS_AND_NAME
+} TRUSTEE_FORM;
+typedef enum _MULTIPLE_TRUSTEE_OPERATION {
+ NO_MULTIPLE_TRUSTEE,
+ TRUSTEE_IS_IMPERSONATE
+} MULTIPLE_TRUSTEE_OPERATION;
+typedef struct _TRUSTEE_A {
+ struct _TRUSTEE_A *pMultipleTrustee;
+ MULTIPLE_TRUSTEE_OPERATION MultipleTrusteeOperation;
+ TRUSTEE_FORM TrusteeForm;
+ TRUSTEE_TYPE TrusteeType;
+ LPSTR ptstrName;
+} TRUSTEE_A, *PTRUSTEE_A, TRUSTEEA, *PTRUSTEEA;
+typedef struct _TRUSTEE_W {
+ struct _TRUSTEE_W *pMultipleTrustee;
+ MULTIPLE_TRUSTEE_OPERATION MultipleTrusteeOperation;
+ TRUSTEE_FORM TrusteeForm;
+ TRUSTEE_TYPE TrusteeType;
+ LPWSTR ptstrName;
+} TRUSTEE_W, *PTRUSTEE_W, TRUSTEEW, *PTRUSTEEW;
+typedef struct _ACTRL_ACCESS_ENTRYA {
+ TRUSTEE_A Trustee;
+ ULONG fAccessFlags;
+ ACCESS_RIGHTS Access;
+ ACCESS_RIGHTS ProvSpecificAccess;
+ INHERIT_FLAGS Inheritance;
+ LPSTR lpInheritProperty;
+} ACTRL_ACCESS_ENTRYA, *PACTRL_ACCESS_ENTRYA;
+typedef struct _ACTRL_ACCESS_ENTRYW {
+ TRUSTEE_W Trustee;
+ ULONG fAccessFlags;
+ ACCESS_RIGHTS Access;
+ ACCESS_RIGHTS ProvSpecificAccess;
+ INHERIT_FLAGS Inheritance;
+ LPWSTR lpInheritProperty;
+} ACTRL_ACCESS_ENTRYW, *PACTRL_ACCESS_ENTRYW;
+typedef struct _ACTRL_ACCESS_ENTRY_LISTA {
+ ULONG cEntries;
+ ACTRL_ACCESS_ENTRYA *pAccessList;
+} ACTRL_ACCESS_ENTRY_LISTA, *PACTRL_ACCESS_ENTRY_LISTA;
+typedef struct _ACTRL_ACCESS_ENTRY_LISTW {
+ ULONG cEntries;
+ ACTRL_ACCESS_ENTRYW *pAccessList;
+} ACTRL_ACCESS_ENTRY_LISTW, *PACTRL_ACCESS_ENTRY_LISTW;
+typedef struct _ACTRL_PROPERTY_ENTRYA {
+ LPSTR lpProperty;
+ PACTRL_ACCESS_ENTRY_LISTA pAccessEntryList;
+ ULONG fListFlags;
+} ACTRL_PROPERTY_ENTRYA, *PACTRL_PROPERTY_ENTRYA;
+typedef struct _ACTRL_PROPERTY_ENTRYW {
+ LPWSTR lpProperty;
+ PACTRL_ACCESS_ENTRY_LISTW pAccessEntryList;
+ ULONG fListFlags;
+} ACTRL_PROPERTY_ENTRYW, *PACTRL_PROPERTY_ENTRYW;
+typedef struct _ACTRL_ALISTA {
+ ULONG cEntries;
+ PACTRL_PROPERTY_ENTRYA pPropertyAccessList;
+} ACTRL_ACCESSA, *PACTRL_ACCESSA, ACTRL_AUDITA, *PACTRL_AUDITA;
+typedef struct _ACTRL_ALISTW {
+ ULONG cEntries;
+ PACTRL_PROPERTY_ENTRYW pPropertyAccessList;
+} ACTRL_ACCESSW, *PACTRL_ACCESSW, ACTRL_AUDITW, *PACTRL_AUDITW;
+typedef struct _TRUSTEE_ACCESSA {
+ LPSTR lpProperty;
+ ACCESS_RIGHTS Access;
+ ULONG fAccessFlags;
+ ULONG fReturnedAccess;
+} TRUSTEE_ACCESSA, *PTRUSTEE_ACCESSA;
+typedef struct _TRUSTEE_ACCESSW {
+ LPWSTR lpProperty;
+ ACCESS_RIGHTS Access;
+ ULONG fAccessFlags;
+ ULONG fReturnedAccess;
+} TRUSTEE_ACCESSW, *PTRUSTEE_ACCESSW;
+typedef struct _ACTRL_OVERLAPPED {
+ _ANONYMOUS_UNION
+ union {
+ PVOID Provider;
+ ULONG Reserved1;
+ } DUMMYUNIONNAME;
+ ULONG Reserved2;
+ HANDLE hEvent;
+} ACTRL_OVERLAPPED, *PACTRL_OVERLAPPED;
+typedef struct _ACTRL_ACCESS_INFOA {
+ ULONG fAccessPermission;
+ LPSTR lpAccessPermissionName;
+} ACTRL_ACCESS_INFOA, *PACTRL_ACCESS_INFOA;
+typedef struct _ACTRL_ACCESS_INFOW {
+ ULONG fAccessPermission;
+ LPWSTR lpAccessPermissionName;
+} ACTRL_ACCESS_INFOW, *PACTRL_ACCESS_INFOW;
+typedef struct _ACTRL_CONTROL_INFOA {
+ LPSTR lpControlId;
+ LPSTR lpControlName;
+} ACTRL_CONTROL_INFOA, *PACTRL_CONTROL_INFOA;
+typedef struct _ACTRL_CONTROL_INFOW {
+ LPWSTR lpControlId;
+ LPWSTR lpControlName;
+} ACTRL_CONTROL_INFOW, *PACTRL_CONTROL_INFOW;
+typedef struct _EXPLICIT_ACCESS_A {
+ DWORD grfAccessPermissions;
+ ACCESS_MODE grfAccessMode;
+ DWORD grfInheritance;
+ TRUSTEE_A Trustee;
+} EXPLICIT_ACCESS_A, *PEXPLICIT_ACCESS_A, EXPLICIT_ACCESSA, *PEXPLICIT_ACCESSA;
+typedef struct _EXPLICIT_ACCESS_W {
+ DWORD grfAccessPermissions;
+ ACCESS_MODE grfAccessMode;
+ DWORD grfInheritance;
+ TRUSTEE_W Trustee;
+} EXPLICIT_ACCESS_W, *PEXPLICIT_ACCESS_W, EXPLICIT_ACCESSW, *PEXPLICIT_ACCESSW;
+typedef struct _OBJECTS_AND_SID {
+ DWORD ObjectsPresent;
+ GUID ObjectTypeGuid;
+ GUID InheritedObjectTypeGuid;
+ SID * pSid;
+} OBJECTS_AND_SID, *POBJECTS_AND_SID;
+typedef struct _OBJECTS_AND_NAME_A {
+ DWORD ObjectsPresent;
+ SE_OBJECT_TYPE ObjectType;
+ LPSTR ObjectTypeName;
+ LPSTR InheritedObjectTypeName;
+ LPSTR ptstrName;
+} OBJECTS_AND_NAME_A, *POBJECTS_AND_NAME_A;
+typedef struct _OBJECTS_AND_NAME_W {
+ DWORD ObjectsPresent;
+ SE_OBJECT_TYPE ObjectType;
+ LPWSTR ObjectTypeName;
+ LPWSTR InheritedObjectTypeName;
+ LPWSTR ptstrName;
+} OBJECTS_AND_NAME_W, *POBJECTS_AND_NAME_W;
+
+
+#ifdef UNICODE
+#define ACCCTRL_DEFAULT_PROVIDER ACCCTRL_DEFAULT_PROVIDERW
+typedef TRUSTEE_W TRUSTEE_, *PTRUSTEE_;
+typedef TRUSTEEW TRUSTEE, *PTRUSTEE;
+typedef ACTRL_ACCESSW ACTRL_ACCESS, *PACTRL_ACCESS;
+typedef ACTRL_ACCESS_ENTRY_LISTW ACTRL_ACCESS_ENTRY_LIST, *PACTRL_ACCESS_ENTRY_LIST;
+typedef ACTRL_ACCESS_INFOW ACTRL_ACCESS_INFO, *PACTRL_ACCESS_INFO;
+typedef ACTRL_ACCESS_ENTRYW ACTRL_ACCESS_ENTRY, *PACTRL_ACCESS_ENTRY;
+typedef ACTRL_AUDITW ACTRL_AUDIT, *PACTRL_AUDIT;
+typedef ACTRL_CONTROL_INFOW ACTRL_CONTROL_INFO, *PACTRL_CONTROL_INFO;
+typedef EXPLICIT_ACCESS_W EXPLICIT_ACCESS_, *PEXPLICIT_ACCESS_;
+typedef EXPLICIT_ACCESSW EXPLICIT_ACCESS, *PEXPLICIT_ACCESS;
+typedef TRUSTEE_ACCESSW TRUSTEE_ACCESS, *PTRUSTEE_ACCESS;
+typedef OBJECTS_AND_NAME_W OBJECTS_AND_NAME_, *POBJECTS_AND_NAME_;
+#else
+#define ACCCTRL_DEFAULT_PROVIDER ACCCTRL_DEFAULT_PROVIDERA
+typedef TRUSTEE_A TRUSTEE_, *PTRUSTEE_;
+typedef TRUSTEEA TRUSTEE, *PTRUSTEE;
+typedef ACTRL_ACCESSA ACTRL_ACCESS, *PACTRL_ACCESS;
+typedef ACTRL_ACCESS_ENTRY_LISTA ACTRL_ACCESS_ENTRY_LIST, *PACTRL_ACCESS_ENTRY_LIST;
+typedef ACTRL_ACCESS_INFOA ACTRL_ACCESS_INFO, *PACTRL_ACCESS_INFO;
+typedef ACTRL_ACCESS_ENTRYA ACTRL_ACCESS_ENTRY, *PACTRL_ACCESS_ENTRY;
+typedef ACTRL_AUDITA ACTRL_AUDIT, *PACTRL_AUDIT;
+typedef ACTRL_CONTROL_INFOA ACTRL_CONTROL_INFO, *PACTRL_CONTROL_INFO;
+typedef EXPLICIT_ACCESS_A EXPLICIT_ACCESS_, *PEXPLICIT_ACCESS_;
+typedef EXPLICIT_ACCESSA EXPLICIT_ACCESS, *PEXPLICIT_ACCESS;
+typedef TRUSTEE_ACCESSA TRUSTEE_ACCESS, *PTRUSTEE_ACCESS;
+typedef OBJECTS_AND_NAME_A OBJECTS_AND_NAME_, *POBJECTS_AND_NAME_;
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _ACCCRTL_H */