diff options
author | Earnie Boyd <earnie@users.sf.net> | 2001-12-03 19:59:34 +0000 |
---|---|---|
committer | Earnie Boyd <earnie@users.sf.net> | 2001-12-03 19:59:34 +0000 |
commit | 6dfcb5a3a9bb858d36c9ab0545ac5ea8726897ba (patch) | |
tree | 8022cf0bf4134927b9c484a71d204b8e390f0d37 | |
parent | 2a50e3df6f78914a051398e2a3b46882cfe0df27 (diff) | |
download | newlib-6dfcb5a3a9bb858d36c9ab0545ac5ea8726897ba.zip newlib-6dfcb5a3a9bb858d36c9ab0545ac5ea8726897ba.tar.gz newlib-6dfcb5a3a9bb858d36c9ab0545ac5ea8726897ba.tar.bz2 |
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.
-rw-r--r-- | winsup/w32api/ChangeLog | 116 | ||||
-rw-r--r-- | winsup/w32api/include/accctrl.h | 312 | ||||
-rw-r--r-- | winsup/w32api/include/aclapi.h | 101 | ||||
-rw-r--r-- | winsup/w32api/include/commdlg.h | 17 | ||||
-rw-r--r-- | winsup/w32api/include/ipexport.h | 4 | ||||
-rw-r--r-- | winsup/w32api/include/iphlpapi.h | 13 | ||||
-rw-r--r-- | winsup/w32api/include/iptypes.h | 7 | ||||
-rw-r--r-- | winsup/w32api/include/rpcdcep.h | 2 | ||||
-rw-r--r-- | winsup/w32api/include/rpcproxy.h | 13 | ||||
-rw-r--r-- | winsup/w32api/include/winbase.h | 11 | ||||
-rw-r--r-- | winsup/w32api/include/windef.h | 6 | ||||
-rw-r--r-- | winsup/w32api/include/windows.h | 7 | ||||
-rw-r--r-- | winsup/w32api/include/winnt.h | 87 | ||||
-rw-r--r-- | winsup/w32api/include/winsock.h | 14 | ||||
-rw-r--r-- | winsup/w32api/include/winsock2.h | 14 | ||||
-rw-r--r-- | winsup/w32api/include/winuser.h | 108 | ||||
-rw-r--r-- | winsup/w32api/lib/advapi32.def | 215 | ||||
-rw-r--r-- | winsup/w32api/lib/dinput.c | 2 | ||||
-rw-r--r-- | winsup/w32api/lib/iphlpapi.def | 12 | ||||
-rw-r--r-- | winsup/w32api/lib/kernel32.c | 26 | ||||
-rw-r--r-- | winsup/w32api/lib/scrnsave.c | 4 | ||||
-rw-r--r-- | winsup/w32api/lib/test.c | 1 | ||||
-rw-r--r-- | winsup/w32api/lib/user32.def | 19 |
23 files changed, 1042 insertions, 69 deletions
diff --git a/winsup/w32api/ChangeLog b/winsup/w32api/ChangeLog index 5f46d89..a2ad39e 100644 --- a/winsup/w32api/ChangeLog +++ b/winsup/w32api/ChangeLog @@ -1,3 +1,39 @@ +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. @@ -5,6 +41,22 @@ (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. @@ -12,12 +64,13 @@ 2001-11-10 Robert Collins <rbtcollins@hotmail.com> - * include/winnt.h: Add Danny Smith's text comment about gcc compiler warnings - with _AUTHORITY #defines. + * 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; + * include/winnt.h (GetCurrentFiber): Create a prototype before the + implementation; (GetFiberData): Ditto. 2001-11-09 Robert Collins <rbtcollins@hotmail.com> @@ -26,11 +79,63 @@ 2001-11-08 Robert Collins <rbtcollins@hotmail.com> - * include/winnt.h: Define *_SID_AUTHORITY appropriately. (nested - structures.) + * include/winnt.h: Define *_SID_AUTHORITY appropriately, GetCurrentFiber: Create a prototype before the implementation; GetFiberData: Ditto. +2001-11-06 Danny Smith <dannysmith@users.sourceforge.net> + + * include/winuser.h (IDC_STATIC): Add define. + Thanks to: Benoit Laniel. + +2001-11-05 Danny Smith <dannysmith@users.sourceforge.net> + + * include/commdlg.h: Include <unknwn.h> rather than local + definition of LPUKNOWN. + * include/rpcproxy.h: Don't include if ndef CINTERFACE. + Emit warning. + +2001-11-05 Mattia Barbon <mbarbon@dsi.unive.it> + + * include/windef.h (DECLSPEC_NORTEURN): Add an empty version + for Watcom. + (DECLARE_STDCALL_P): Use it to add __stdcall decoration for + functions of the form 'type * function(...)' in a way compatible + with both Watcom and GCC. + * include/rpcdcep.h (I_RpcAllocate): Use DECLARE_STDCALL_P. + * include/rpcproxy.h (CInterfaceProxyVtbl): Do not declare + zero-sized arrays for Watcom. Mark as __extension for __GNUC__. + * include/windows.h: Watcom can use anonymous structs/unions. + * include/winnt.h: Watcom can use 64 bit ints. + (GetCurrentFiber): Add another inline definition using + Watcom inline assembly syntax. + (GetFiberData): Likewise. + * include/winsock.h (inet_ntoa): Use DECLARE_STDCALL_P. + (gethostbyname): Likewise. + (gethostbyaddr}: Likewise. + (getservbyport}: Likewise. + (getservbyname}: Likewise. + (getprotobynumber}: Likewise. + (getprotobyname}: Likewise. + * include/winsock2.h (inet_ntoa): Use DECLARE_STDCALL_P. + (gethostbyname}: Likewise. + (gethostbyaddr}: Likewise. + (getservbyport}: Likewise. + (getservbyname}: Likewise. + (getprotobynumber}: Likewise. + (getprotobyname}: Likewise. + * lib/diinut.c: Correction for Watcom. + * lib/kernel32.c (GetCurrentFiber): Add another definition + using Watcom inline assembly syntax. + (GetFiberData): Likewise. + * lib/scrnsave.c (WinMain): Add break after default: + clause. + +2001-11-04 "stefan" <stefan@lkcc.org> + + * include/winnt.h (GetCurrentFiber): Add prototype. + (GetFiberData): Likewise. + 2001-11-04 Christopher Faylor <cgf@redhat.com> * lib/Makefile.in: Add .NOTPARALLEL target since dlltool cannot run in @@ -53,7 +158,6 @@ (PrintDlgEx[AW]): Add function declaration. * lib/comdlg32.def (PrintDlgEx[AW]): Add function stubs. * ChangeLog: Fix typo in last entry. - 2001-11-01 TAMURA Kent <tkent@users.sourceforge.net> diff --git a/winsup/w32api/include/accctrl.h b/winsup/w32api/include/accctrl.h new file mode 100644 index 0000000..3db4279 --- /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 */ diff --git a/winsup/w32api/include/aclapi.h b/winsup/w32api/include/aclapi.h new file mode 100644 index 0000000..7e7e629 --- /dev/null +++ b/winsup/w32api/include/aclapi.h @@ -0,0 +1,101 @@ +#ifndef _ACLAPI_H +#define _ACLAPI_H + +#include <windows.h> +#include <accctrl.h> + +#ifdef __cplusplus +extern "C" { +#endif +VOID WINAPI BuildExplicitAccessWithNameA(PEXPLICIT_ACCESS_A,LPSTR,DWORD,ACCESS_MODE,DWORD); +VOID WINAPI BuildExplicitAccessWithNameW(PEXPLICIT_ACCESS_W,LPWSTR,DWORD,ACCESS_MODE,DWORD); +DWORD WINAPI BuildSecurityDescriptorA(PTRUSTEE_A,PTRUSTEE_A ,ULONG,PEXPLICIT_ACCESS_A, + ULONG,PEXPLICIT_ACCESS_A,PSECURITY_DESCRIPTOR,PULONG,PSECURITY_DESCRIPTOR*); +DWORD WINAPI BuildSecurityDescriptorW(PTRUSTEE_W,PTRUSTEE_W ,ULONG,PEXPLICIT_ACCESS_W, + ULONG,PEXPLICIT_ACCESS_W,PSECURITY_DESCRIPTOR,PULONG,PSECURITY_DESCRIPTOR*); +VOID WINAPI BuildTrusteeWithNameA(PTRUSTEE_A,LPSTR); +VOID WINAPI BuildTrusteeWithNameW(PTRUSTEE_W,LPWSTR); +VOID WINAPI BuildTrusteeWithObjectsAndNameA(PTRUSTEE_A,POBJECTS_AND_NAME_A,SE_OBJECT_TYPE, + LPSTR,LPSTR,LPSTR); +VOID WINAPI BuildTrusteeWithObjectsAndNameW(PTRUSTEE_W,POBJECTS_AND_NAME_W,SE_OBJECT_TYPE, + LPWSTR,LPWSTR,LPWSTR); +VOID WINAPI BuildTrusteeWithObjectsAndSidA(PTRUSTEE_A,POBJECTS_AND_SID,GUID*,GUID*,PSID); +VOID WINAPI BuildTrusteeWithObjectsAndSidW(PTRUSTEE_W,POBJECTS_AND_SID,GUID*,GUID*,PSID); +VOID WINAPI BuildTrusteeWithSidA(PTRUSTEE_A,PSID); +VOID WINAPI BuildTrusteeWithSidW(PTRUSTEE_W,PSID); +DWORD WINAPI GetAuditedPermissionsFromAclA(PACL,PTRUSTEE_A,PACCESS_MASK,PACCESS_MASK); +DWORD WINAPI GetAuditedPermissionsFromAclW(PACL,PTRUSTEE_W,PACCESS_MASK,PACCESS_MASK); +DWORD WINAPI GetEffectiveRightsFromAclA(PACL,PTRUSTEE_A,PACCESS_MASK); +DWORD WINAPI GetEffectiveRightsFromAclW(PACL,PTRUSTEE_W,PACCESS_MASK); +DWORD WINAPI GetExplicitEntriesFromAclA(PACL,PULONG,PEXPLICIT_ACCESS_A*); +DWORD WINAPI GetExplicitEntriesFromAclW(PACL,PULONG,PEXPLICIT_ACCESS_W*); +DWORD WINAPI GetNamedSecurityInfoA(LPSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION, + PSID*,PSID*,PACL*,PACL*,PSECURITY_DESCRIPTOR*); +DWORD WINAPI GetNamedSecurityInfoW(LPWSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION, + PSID*,PSID*,PACL*,PACL*,PSECURITY_DESCRIPTOR*); +DWORD WINAPI GetSecurityInfo(HANDLE,SE_OBJECT_TYPE,SECURITY_INFORMATION, + PSID*,PSID*,PACL*,PACL*,PSECURITY_DESCRIPTOR*); +TRUSTEE_FORM WINAPI GetTrusteeFormA(PTRUSTEE_A); +TRUSTEE_FORM WINAPI GetTrusteeFormW(PTRUSTEE_W); +LPSTR WINAPI GetTrusteeNameA(PTRUSTEE_A); +LPWSTR WINAPI GetTrusteeNameW(PTRUSTEE_W); +TRUSTEE_TYPE WINAPI GetTrusteeTypeA(PTRUSTEE_A); +TRUSTEE_TYPE WINAPI GetTrusteeTypeW(PTRUSTEE_W); +DWORD WINAPI LookupSecurityDescriptorPartsA(PTRUSTEE_A*,PTRUSTEE_A*,PULONG,PEXPLICIT_ACCESS_A*, + PULONG,PEXPLICIT_ACCESS_A*,PSECURITY_DESCRIPTOR); +DWORD WINAPI LookupSecurityDescriptorPartsW(PTRUSTEE_W*,PTRUSTEE_W*,PULONG,PEXPLICIT_ACCESS_W*, + PULONG,PEXPLICIT_ACCESS_W*,PSECURITY_DESCRIPTOR); +DWORD WINAPI SetEntriesInAclA(ULONG,PEXPLICIT_ACCESS_A,PACL,PACL*); +DWORD WINAPI SetEntriesInAclW(ULONG,PEXPLICIT_ACCESS_W,PACL,PACL*); +DWORD WINAPI SetNamedSecurityInfoA(LPSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,PSID,PSID,PACL,PACL); +DWORD WINAPI SetNamedSecurityInfoW(LPWSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,PSID,PSID,PACL,PACL); +DWORD WINAPI SetSecurityInfo(HANDLE,SE_OBJECT_TYPE,SECURITY_INFORMATION,PSID,PSID,PACL,PACL); + +/* These are deprecated by MS and not documented in Aug 2001 PSDK +BuildImpersonateExplicitAccessWithName[AW] +BuildImpersonateTrustee[AW] +GetMultipleTrustee[AW] +GetMultipleTrusteeOperation[AW] +*/ + +#ifdef UNICODE +#define BuildExplicitAccessWithName BuildExplicitAccessWithNameW +#define BuildSecurityDescriptor BuildSecurityDescriptorW +#define BuildTrusteeWithName BuildTrusteeWithNameW +#define BuildTrusteeWithObjectsAndName BuildTrusteeWithObjectsAndNameW +#define BuildTrusteeWithObjectsAndSid BuildTrusteeWithObjectsAndSidW +#define BuildTrusteeWithSid BuildTrusteeWithSidW +#define GetAuditedPermissionsFromAcl GetAuditedPermissionsFromAclW +#define GetEffectiveRightsFromAcl GetEffectiveRightsFromAclW +#define GetExplicitEntriesFromAcl GetExplicitEntriesFromAclW +#define GetNamedSecurityInfo GetNamedSecurityInfoW +#define GetTrusteeForm GetTrusteeFormW +#define GetTrusteeName GetTrusteeNameW +#define GetTrusteeType GetTrusteeTypeW +#define LookupSecurityDescriptorParts LookupSecurityDescriptorPartsW +#define SetEntriesInAcl SetEntriesInAclW +#define SetNamedSecurityInfo SetNamedSecurityInfoW +#else +#define BuildExplicitAccessWithName BuildExplicitAccessWithNameA +#define BuildSecurityDescriptor BuildSecurityDescriptorA +#define BuildTrusteeWithName BuildTrusteeWithNameA +#define BuildTrusteeWithObjectsAndName BuildTrusteeWithObjectsAndNameA +#define BuildTrusteeWithObjectsAndSid BuildTrusteeWithObjectsAndSidA +#define BuildTrusteeWithSid BuildTrusteeWithSidA +#define GetAuditedPermissionsFromAcl GetAuditedPermissionsFromAclA +#define GetEffectiveRightsFromAcl GetEffectiveRightsFromAclA +#define GetExplicitEntriesFromAcl GetExplicitEntriesFromAclA +#define GetNamedSecurityInfo GetNamedSecurityInfoA +#define GetTrusteeForm GetTrusteeFormA +#define GetTrusteeName GetTrusteeNameA +#define GetTrusteeType GetTrusteeTypeA +#define LookupSecurityDescriptorParts LookupSecurityDescriptorPartsA +#define SetEntriesInAcl SetEntriesInAclA +#define SetNamedSecurityInfo SetNamedSecurityInfoA +#endif /* UNICODE */ + +#ifdef __cplusplus +} +#endif +#endif + diff --git a/winsup/w32api/include/commdlg.h b/winsup/w32api/include/commdlg.h index cc19c41..d1a4433 100644 --- a/winsup/w32api/include/commdlg.h +++ b/winsup/w32api/include/commdlg.h @@ -427,21 +427,8 @@ typedef struct tagPDW { HANDLE hSetupTemplate; } PRINTDLGW,*LPPRINTDLGW; #if (WINVER >= 0x0500) -/* We could #include <unknwn.h> here but that would bring -in a cascade of rpc dependencies */ -#ifndef __IUnknown_INTERFACE_DEFINED__ -#define __IUnknown_INTERFACE_DEFINED__ -#undef INTERFACE -#define INTERFACE IUnknown -DECLARE_INTERFACE(IUnknown) -{ - STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; -}; -typedef IUnknown *LPUNKNOWN; -#endif -#include <prsht.h> /* for HPROPSHEETPAGE */ +#include <unknwn.h> /* for LPUNKNOWN */ +#include <prsht.h> /* for HPROPSHEETPAGE */ typedef struct tagPRINTPAGERANGE { DWORD nFromPage; DWORD nToPage; diff --git a/winsup/w32api/include/ipexport.h b/winsup/w32api/include/ipexport.h index 4505dc4..d2c7553 100644 --- a/winsup/w32api/include/ipexport.h +++ b/winsup/w32api/include/ipexport.h @@ -74,6 +74,10 @@ typedef struct { LONG NumAdapters; IP_ADAPTER_INDEX_MAP Adapter[ANY_SIZE]; } IP_INTERFACE_INFO, *PIP_INTERFACE_INFO; +typedef struct _IP_UNIDIRECTIONAL_ADAPTER_ADDRESS { + ULONG NumAdapters; + IPAddr Address[1]; +} IP_UNIDIRECTIONAL_ADAPTER_ADDRESS, *PIP_UNIDIRECTIONAL_ADAPTER_ADDRESS; #ifdef __cplusplus } #endif diff --git a/winsup/w32api/include/iphlpapi.h b/winsup/w32api/include/iphlpapi.h index e71da0a..d2d112d 100644 --- a/winsup/w32api/include/iphlpapi.h +++ b/winsup/w32api/include/iphlpapi.h @@ -6,10 +6,17 @@ #ifdef __cplusplus extern "C" { #endif +DWORD WINAPI AddIPAddress(IPAddr,IPMask,DWORD,PULONG,PULONG); DWORD WINAPI CreateIpForwardEntry(PMIB_IPFORWARDROW); DWORD WINAPI CreateIpNetEntry(PMIB_IPNETROW); +DWORD WINAPI CreateProxyArpEntry(DWORD,DWORD,DWORD); +DWORD WINAPI DeleteIPAddress(ULONG); DWORD WINAPI DeleteIpForwardEntry(PMIB_IPFORWARDROW); DWORD WINAPI DeleteIpNetEntry(PMIB_IPNETROW); +DWORD WINAPI DeleteProxyArpEntry(DWORD,DWORD,DWORD); +DWORD WINAPI EnableRouter(HANDLE*,OVERLAPPED*); +DWORD WINAPI FlushIpNetTable(DWORD); +DWORD WINAPI GetAdapterIndex(LPWSTR,PULONG); DWORD WINAPI GetAdaptersInfo(PIP_ADAPTER_INFO,PULONG); DWORD WINAPI GetBestInterface(IPAddr,PDWORD); DWORD WINAPI GetBestRoute(DWORD,DWORD,PMIB_IPFORWARDROW); @@ -24,19 +31,25 @@ DWORD WINAPI GetIpNetTable(PMIB_IPNETTABLE,PULONG,BOOL); DWORD WINAPI GetIpStatistics(PMIB_IPSTATS); DWORD WINAPI GetNetworkParams(PFIXED_INFO,PULONG); DWORD WINAPI GetNumberOfInterfaces(PDWORD); +DWORD WINAPI GetPerAdapterInfo(ULONG,PIP_PER_ADAPTER_INFO, PULONG); BOOL WINAPI GetRTTAndHopCount(IPAddr,PULONG,ULONG,PULONG); DWORD WINAPI GetTcpStatistics(PMIB_TCPSTATS); DWORD WINAPI GetTcpTable(PMIB_TCPTABLE,PDWORD,BOOL); +DWORD WINAPI GetUniDirectionalAdapterInfo(PIP_UNIDIRECTIONAL_ADAPTER_ADDRESS,PULONG); DWORD WINAPI GetUdpStatistics(PMIB_UDPSTATS); DWORD WINAPI GetUdpTable(PMIB_UDPTABLE,PDWORD,BOOL); DWORD WINAPI IpReleaseAddress(PIP_ADAPTER_INDEX_MAP); DWORD WINAPI IpRenewAddress(PIP_ADAPTER_INDEX_MAP); +DWORD WINAPI NotifyAddrChange(PHANDLE,LPOVERLAPPED); +DWORD WINAPI NotifyRouteChange(PHANDLE,LPOVERLAPPED); +DWORD WINAPI SendARP(IPAddr,IPAddr,PULONG,PULONG); DWORD WINAPI SetIfEntry(PMIB_IFROW); DWORD WINAPI SetIpForwardEntry(PMIB_IPFORWARDROW); DWORD WINAPI SetIpNetEntry(PMIB_IPNETROW); DWORD WINAPI SetIpStatistics(PMIB_IPSTATS); DWORD WINAPI SetIpTTL(UINT); DWORD WINAPI SetTcpEntry(PMIB_TCPROW); +DWORD WINAPI UnenableRouter(OVERLAPPED*, LPDWORD); #ifdef __cplusplus } #endif diff --git a/winsup/w32api/include/iptypes.h b/winsup/w32api/include/iptypes.h index 09abe15..8b5e8ae 100644 --- a/winsup/w32api/include/iptypes.h +++ b/winsup/w32api/include/iptypes.h @@ -50,6 +50,12 @@ typedef struct _IP_ADAPTER_INFO { time_t LeaseObtained; time_t LeaseExpires; } IP_ADAPTER_INFO, *PIP_ADAPTER_INFO; +typedef struct _IP_PER_ADAPTER_INFO { + UINT AutoconfigEnabled; + UINT AutoconfigActive; + PIP_ADDR_STRING CurrentDnsServer; + IP_ADDR_STRING DnsServerList; +} IP_PER_ADAPTER_INFO, *PIP_PER_ADAPTER_INFO; typedef struct _FIXED_INFO { char HostName[MAX_HOSTNAME_LEN+4] ; char DomainName[MAX_DOMAIN_NAME_LEN+4]; @@ -61,6 +67,7 @@ typedef struct _FIXED_INFO { UINT EnableProxy; UINT EnableDns; } FIXED_INFO, *PFIXED_INFO; + #ifdef __cplusplus } #endif diff --git a/winsup/w32api/include/rpcdcep.h b/winsup/w32api/include/rpcdcep.h index 8479360..184d352 100644 --- a/winsup/w32api/include/rpcdcep.h +++ b/winsup/w32api/include/rpcdcep.h @@ -81,7 +81,7 @@ long __stdcall I_RpcFreeBuffer(RPC_MESSAGE*); void __stdcall I_RpcRequestMutex(I_RPC_MUTEX*); void __stdcall I_RpcClearMutex(I_RPC_MUTEX); void __stdcall I_RpcDeleteMutex(I_RPC_MUTEX); -__stdcall void *I_RpcAllocate(unsigned int); +DECLARE_STDCALL_P(void *) I_RpcAllocate(unsigned int); void __stdcall I_RpcFree(void*); void __stdcall I_RpcPauseExecution(unsigned long); typedef void(__stdcall *PRPC_RUNDOWN) (void*); diff --git a/winsup/w32api/include/rpcproxy.h b/winsup/w32api/include/rpcproxy.h index fa968fc..5c6dba0 100644 --- a/winsup/w32api/include/rpcproxy.h +++ b/winsup/w32api/include/rpcproxy.h @@ -6,6 +6,9 @@ */ #ifndef _RPCPROXY_H #define _RPCPROXY_H +#if defined __cplusplus && !defined CINTERFACE +#warning "rpcproxy type definitions require CINTERFACE" +#else #ifdef __cplusplus extern "C" { #endif @@ -121,7 +124,14 @@ typedef struct tagCInterfaceProxyHeader { } CInterfaceProxyHeader; typedef struct tagCInterfaceProxyVtbl { CInterfaceProxyHeader header; +#if defined(__WATCOMC__) + void *Vtbl[1]; +#else +#ifdef __GNUC__ +__extension__ +#endif void *Vtbl[0]; +#endif } CInterfaceProxyVtbl; typedef void (__RPC_STUB *PRPC_STUB_FUNCTION)(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*); typedef struct tagCInterfaceStubHeader { @@ -181,5 +191,6 @@ NdrCStdStubBuffer2_Release(IRpcStubBuffer*,IPSFactoryBuffer*); #ifdef __cplusplus } #endif -#endif +#endif /* defined __cplusplus && !defined CINTERFACE */ +#endif /* ndef _RPCPROXY_H */ diff --git a/winsup/w32api/include/winbase.h b/winsup/w32api/include/winbase.h index a75a7d5..a71c115 100644 --- a/winsup/w32api/include/winbase.h +++ b/winsup/w32api/include/winbase.h @@ -427,9 +427,6 @@ extern "C" { #define CBR_115200 115200 #define CBR_128000 128000 #define CBR_256000 256000 -#define VER_PLATFORM_WIN32s 0 -#define VER_PLATFORM_WIN32_WINDOWS 1 -#define VER_PLATFORM_WIN32_NT 2 #define BACKUP_INVALID 0 #define BACKUP_DATA 1 #define BACKUP_EA_DATA 2 @@ -1572,6 +1569,8 @@ BOOL WINAPI UnlockFileEx(HANDLE,DWORD,DWORD,DWORD,LPOVERLAPPED); BOOL WINAPI UnmapViewOfFile(PVOID); BOOL WINAPI UpdateResourceA(HANDLE,LPCSTR,LPCSTR,WORD,PVOID,DWORD); BOOL WINAPI UpdateResourceW(HANDLE,LPCWSTR,LPCWSTR,WORD,PVOID,DWORD); +BOOL WINAPI VerifyVersionInfoA(LPOSVERSIONINFOEXA,DWORD,DWORDLONG); +BOOL WINAPI VerifyVersionInfoW(LPOSVERSIONINFOEXW,DWORD,DWORDLONG); PVOID WINAPI VirtualAlloc(PVOID,DWORD,DWORD,DWORD); BOOL WINAPI VirtualFree(PVOID,DWORD,DWORD); BOOL WINAPI VirtualFreeEx(HANDLE,PVOID,DWORD,DWORD); @@ -1610,8 +1609,6 @@ DWORD WINAPI WriteTapemark(HANDLE,DWORD,DWORD,BOOL); typedef STARTUPINFOW STARTUPINFO,*LPSTARTUPINFO; typedef WIN32_FIND_DATAW WIN32_FIND_DATA,*LPWIN32_FIND_DATA; typedef HW_PROFILE_INFOW HW_PROFILE_INFO,*LPHW_PROFILE_INFO; -typedef OSVERSIONINFOW OSVERSIONINFO,*POSVERSIONINFO,*LPOSVERSIONINFO; -typedef OSVERSIONINFOEXW OSVERSIONINFOEX,*POSVERSIONINFOEX,*LPOSVERSIONINFOEX; #define AccessCheckAndAuditAlarm AccessCheckAndAuditAlarmW #define AddAtom AddAtomW #define BackupEventLog BackupEventLogW @@ -1737,6 +1734,7 @@ typedef OSVERSIONINFOEXW OSVERSIONINFOEX,*POSVERSIONINFOEX,*LPOSVERSIONINFOEX; #define SetFileSecurity SetFileSecurityW #define SetVolumeLabel SetVolumeLabelW #define UpdateResource UpdateResourceW +#define VerifyVersionInfo VerifyVersionInfoW #define WaitNamedPipe WaitNamedPipeW #define WritePrivateProfileSection WritePrivateProfileSectionW #define WritePrivateProfileString WritePrivateProfileStringW @@ -1747,8 +1745,6 @@ typedef OSVERSIONINFOEXW OSVERSIONINFOEX,*POSVERSIONINFOEX,*LPOSVERSIONINFOEX; typedef STARTUPINFOA STARTUPINFO,*LPSTARTUPINFO; typedef WIN32_FIND_DATAA WIN32_FIND_DATA,*LPWIN32_FIND_DATA; typedef HW_PROFILE_INFOA HW_PROFILE_INFO,*LPHW_PROFILE_INFO; -typedef OSVERSIONINFOA OSVERSIONINFO,*POSVERSIONINFO,*LPOSVERSIONINFO; -typedef OSVERSIONINFOEXA OSVERSIONINFOEX,*POSVERSIONINFOEX,*LPOSVERSIONINFOEX; #define AccessCheckAndAuditAlarm AccessCheckAndAuditAlarmA #define AddAtom AddAtomA #define BackupEventLog BackupEventLogA @@ -1874,6 +1870,7 @@ typedef OSVERSIONINFOEXA OSVERSIONINFOEX,*POSVERSIONINFOEX,*LPOSVERSIONINFOEX; #define SetFileSecurity SetFileSecurityA #define SetVolumeLabel SetVolumeLabelA #define UpdateResource UpdateResourceA +#define VerifyVersionInfo VerifyVersionInfoA #define WaitNamedPipe WaitNamedPipeA #define WritePrivateProfileSection WritePrivateProfileSectionA #define WritePrivateProfileString WritePrivateProfileStringA diff --git a/winsup/w32api/include/windef.h b/winsup/w32api/include/windef.h index 2d16d44..f4de5ca 100644 --- a/winsup/w32api/include/windef.h +++ b/winsup/w32api/include/windef.h @@ -88,7 +88,13 @@ extern "C" { #define DECLSPEC_IMPORT __declspec(dllimport) #define DECLSPEC_EXPORT __declspec(dllexport) +#ifdef __GNUC__ #define DECLSPEC_NORETURN __declspec(noreturn) +#define DECLARE_STDCALL_P( type ) __stdcall type +#elif defined(__WATCOMC__) +#define DECLSPEC_NORETURN +#define DECLARE_STDCALL_P( type ) type __stdcall +#endif /* __GNUC__/__WATCOMC__ */ #define MAKEWORD(a,b) ((WORD)(((BYTE)(a))|(((WORD)((BYTE)(b)))<<8))) #define MAKELONG(a,b) ((LONG)(((WORD)(a))|(((DWORD)((WORD)(b)))<<16))) #define LOWORD(l) ((WORD)((DWORD)(l))) diff --git a/winsup/w32api/include/windows.h b/winsup/w32api/include/windows.h index 64e70c9..ce8928b 100644 --- a/winsup/w32api/include/windows.h +++ b/winsup/w32api/include/windows.h @@ -48,10 +48,13 @@ #else #if defined(__cplusplus) #define _ANONYMOUS_UNION __extension__ -#endif +#endif /* __cplusplus */ #endif /* __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95) */ #endif /* NONAMELESSUNION */ -#endif /* __GNUC__ */ +#elif defined(__WATCOMC__) +#define _ANONYMOUS_UNION +#define _ANONYMOUS_STRUCT +#endif /* __GNUC__/__WATCOMC__ */ #ifndef _ANONYMOUS_UNION #define _ANONYMOUS_UNION diff --git a/winsup/w32api/include/winnt.h b/winsup/w32api/include/winnt.h index 1a21d8f..a88605d 100644 --- a/winsup/w32api/include/winnt.h +++ b/winsup/w32api/include/winnt.h @@ -117,7 +117,9 @@ typedef WORD LANGID; #define _INTEGRAL_MAX_BITS 64 #undef __int64 #define __int64 long long -#endif +#elif defined(__WATCOMC__) && (defined(_INTEGRAL_MAX_BITS) && _INTEGRAL_MAX_BITS >= 64 ) +#define _HAVE_INT64 +#endif /* __GNUC__/__WATCOMC */ #if defined(_HAVE_INT64) || (defined(_INTEGRAL_MAX_BITS) && _INTEGRAL_MAX_BITS >= 64) typedef __int64 LONGLONG; typedef unsigned __int64 DWORDLONG; @@ -1057,6 +1059,12 @@ typedef BYTE BOOLEAN,*PBOOLEAN; #define TAPE_LOCK 3 #define TAPE_UNLOCK 4 #define TAPE_FORMAT 5 +#define VER_PLATFORM_WIN32s 0 +#define VER_PLATFORM_WIN32_WINDOWS 1 +#define VER_PLATFORM_WIN32_NT 2 +#define VER_NT_WORKSTATION 1 +#define VER_NT_DOMAIN_CONTROLLER 2 +#define VER_NT_SERVER 3 #define BTYPE(x) ((x)&N_BTMASK) #define ISPTR(x) (((x)&N_TMASK)==(IMAGE_SYM_DTYPE_POINTER<<N_BTSHFT)) #define ISFCN(x) (((x)&N_TMASK)==(IMAGE_SYM_DTYPE_FUNCTION<<N_BTSHFT)) @@ -1089,7 +1097,7 @@ typedef BYTE BOOLEAN,*PBOOLEAN; #define VER_SUITE_DATACENTER 128 #define VER_SUITE_PERSONAL 512 #ifndef RC_INVOKED -typedef DWORD ACCESS_MASK; +typedef DWORD ACCESS_MASK, *PACCESS_MASK; #ifndef _GUID_DEFINED /* also defined in basetyps.h */ #define _GUID_DEFINED typedef struct _GUID { @@ -1790,7 +1798,6 @@ typedef struct _SE_IMPERSONATION_STATE { BOOLEAN EffectiveOnly; SECURITY_IMPERSONATION_LEVEL Level; } SE_IMPERSONATION_STATE,*PSE_IMPERSONATION_STATE; - typedef struct _SID_IDENTIFIER_AUTHORITY { BYTE Value[6]; } SID_IDENTIFIER_AUTHORITY,*PSID_IDENTIFIER_AUTHORITY,*LPSID_IDENTIFIER_AUTHORITY; @@ -2015,6 +2022,48 @@ typedef struct _EVENTLOGRECORD { DWORD DataLength; DWORD DataOffset; } EVENTLOGRECORD,*PEVENTLOGRECORD; +typedef struct _OSVERSIONINFOA { + DWORD dwOSVersionInfoSize; + DWORD dwMajorVersion; + DWORD dwMinorVersion; + DWORD dwBuildNumber; + DWORD dwPlatformId; + CHAR szCSDVersion[128]; +} OSVERSIONINFOA,*POSVERSIONINFOA,*LPOSVERSIONINFOA; +typedef struct _OSVERSIONINFOW { + DWORD dwOSVersionInfoSize; + DWORD dwMajorVersion; + DWORD dwMinorVersion; + DWORD dwBuildNumber; + DWORD dwPlatformId; + WCHAR szCSDVersion[128]; +} OSVERSIONINFOW,*POSVERSIONINFOW,*LPOSVERSIONINFOW; +typedef struct _OSVERSIONINFOEXA { + DWORD dwOSVersionInfoSize; + DWORD dwMajorVersion; + DWORD dwMinorVersion; + DWORD dwBuildNumber; + DWORD dwPlatformId; + CHAR szCSDVersion[128]; + WORD wServicePackMajor; + WORD wServicePackMinor; + WORD wSuiteMask; + BYTE wProductType; + BYTE wReserved; +} OSVERSIONINFOEXA, *POSVERSIONINFOEXA, *LPOSVERSIONINFOEXA; +typedef struct _OSVERSIONINFOEXW { + DWORD dwOSVersionInfoSize; + DWORD dwMajorVersion; + DWORD dwMinorVersion; + DWORD dwBuildNumber; + DWORD dwPlatformId; + WCHAR szCSDVersion[128]; + WORD wServicePackMajor; + WORD wServicePackMinor; + WORD wSuiteMask; + BYTE wProductType; + BYTE wReserved; +} OSVERSIONINFOEXW, *POSVERSIONINFOEXW, *LPOSVERSIONINFOEXW; #pragma pack(push,2) typedef struct _IMAGE_VXD_HEADER { WORD e32_magic; @@ -2542,6 +2591,20 @@ typedef struct _REPARSE_POINT_INFORMATION { WORD ReparseDataLength; WORD UnparsedNameLength; } REPARSE_POINT_INFORMATION, *PREPARSE_POINT_INFORMATION; + +#ifdef UNICODE +typedef OSVERSIONINFOW OSVERSIONINFO,*POSVERSIONINFO,*LPOSVERSIONINFO; +typedef OSVERSIONINFOEXW OSVERSIONINFOEX,*POSVERSIONINFOEX,*LPOSVERSIONINFOEX; +#else +typedef OSVERSIONINFOA OSVERSIONINFO,*POSVERSIONINFO,*LPOSVERSIONINFO; +typedef OSVERSIONINFOEXA OSVERSIONINFOEX,*POSVERSIONINFOEX,*LPOSVERSIONINFOEX; +#endif + +#if defined(__GNUC__) + +PVOID GetCurrentFiber(void); +PVOID GetFiberData(void); + PVOID GetCurrentFiber(void); extern __inline__ PVOID GetCurrentFiber(void) { @@ -2553,6 +2616,7 @@ extern __inline__ PVOID GetCurrentFiber(void) ); return ret; } + PVOID GetFiberData(void); extern __inline__ PVOID GetFiberData(void) { @@ -2566,6 +2630,23 @@ extern __inline__ PVOID GetFiberData(void) return ret; } +#else + +extern PVOID GetCurrentFiber(void); +#pragma aux GetCurrentFiber = \ + "mov eax, dword ptr fs:0x10" \ + value [eax] \ + modify [eax]; + +extern PVOID GetFiberData(void); +#pragma aux GetFiberData = \ + "mov eax, dword ptr fs:0x10" \ + "mov eax, [eax]" \ + value [eax] \ + modify [eax]; + +#endif /* __GNUC__ */ + #endif #ifdef __cplusplus } diff --git a/winsup/w32api/include/winsock.h b/winsup/w32api/include/winsock.h index e88ad3b..8ab4899 100644 --- a/winsup/w32api/include/winsock.h +++ b/winsup/w32api/include/winsock.h @@ -429,7 +429,7 @@ int PASCAL getpeername(SOCKET,struct sockaddr*,int*); int PASCAL getsockname(SOCKET,struct sockaddr*,int*); int PASCAL getsockopt(SOCKET,int,int,char*,int*); unsigned long PASCAL inet_addr(const char*); -PASCAL char *inet_ntoa(struct in_addr); +DECLARE_STDCALL_P(char *) inet_ntoa(struct in_addr); int PASCAL listen(SOCKET,int); int PASCAL recv(SOCKET,char*,int,int); int PASCAL recvfrom(SOCKET,char*,int,int,struct sockaddr*,int*); @@ -438,12 +438,12 @@ int PASCAL sendto(SOCKET,const char*,int,int,const struct sockaddr*,int); int PASCAL setsockopt(SOCKET,int,int,const char*,int); int PASCAL shutdown(SOCKET,int); SOCKET PASCAL socket(int,int,int); -PASCAL struct hostent *gethostbyaddr(const char*,int,int); -PASCAL struct hostent *gethostbyname(const char*); -PASCAL struct servent *getservbyport(int,const char*); -PASCAL struct servent *getservbyname(const char*,const char*); -PASCAL struct protoent *getprotobynumber(int); -PASCAL struct protoent *getprotobyname(const char*); +DECLARE_STDCALL_P(struct hostent *) gethostbyaddr(const char*,int,int); +DECLARE_STDCALL_P(struct hostent *) gethostbyname(const char*); +DECLARE_STDCALL_P(struct servent *) getservbyport(int,const char*); +DECLARE_STDCALL_P(struct servent *) getservbyname(const char*,const char*); +DECLARE_STDCALL_P(struct protoent *) getprotobynumber(int); +DECLARE_STDCALL_P(struct protoent *) getprotobyname(const char*); int PASCAL WSAStartup(WORD,LPWSADATA); int PASCAL WSACleanup(void); void PASCAL WSASetLastError(int); diff --git a/winsup/w32api/include/winsock2.h b/winsup/w32api/include/winsock2.h index 721d341..1af6933 100644 --- a/winsup/w32api/include/winsock2.h +++ b/winsup/w32api/include/winsock2.h @@ -448,7 +448,7 @@ int PASCAL getpeername(SOCKET,struct sockaddr*,int*); int PASCAL getsockname(SOCKET,struct sockaddr*,int*); int PASCAL getsockopt(SOCKET,int,int,char*,int*); unsigned long PASCAL inet_addr(const char*); -PASCAL char *inet_ntoa(struct in_addr); +DECLARE_STDCALL_P(char *) inet_ntoa(struct in_addr); int PASCAL listen(SOCKET,int); int PASCAL recv(SOCKET,char*,int,int); int PASCAL recvfrom(SOCKET,char*,int,int,struct sockaddr*,int*); @@ -457,12 +457,12 @@ int PASCAL sendto(SOCKET,const char*,int,int,const struct sockaddr*,int); int PASCAL setsockopt(SOCKET,int,int,const char*,int); int PASCAL shutdown(SOCKET,int); SOCKET PASCAL socket(int,int,int); -PASCAL struct hostent *gethostbyaddr(const char*,int,int); -PASCAL struct hostent *gethostbyname(const char*); -PASCAL struct servent *getservbyport(int,const char*); -PASCAL struct servent *getservbyname(const char*,const char*); -PASCAL struct protoent *getprotobynumber(int); -PASCAL struct protoent *getprotobyname(const char*); +DECLARE_STDCALL_P(struct hostent *) gethostbyaddr(const char*,int,int); +DECLARE_STDCALL_P(struct hostent *) gethostbyname(const char*); +DECLARE_STDCALL_P(struct servent *) getservbyport(int,const char*); +DECLARE_STDCALL_P(struct servent *) getservbyname(const char*,const char*); +DECLARE_STDCALL_P(struct protoent *) getprotobynumber(int); +DECLARE_STDCALL_P(struct protoent *) getprotobyname(const char*); int PASCAL WSAStartup(WORD,LPWSADATA); int PASCAL WSACleanup(void); void PASCAL WSASetLastError(int); diff --git a/winsup/w32api/include/winuser.h b/winsup/w32api/include/winuser.h index 26986cc..4c5777b 100644 --- a/winsup/w32api/include/winuser.h +++ b/winsup/w32api/include/winuser.h @@ -544,6 +544,9 @@ extern "C" { #define GCL_MENUNAME (-8) #define GCL_STYLE (-26) #define GCL_WNDPROC (-24) +#ifndef IDC_STATIC /* May be predefined by resource compiler. */ +#define IDC_STATIC (-1) +#endif #define IDC_ARROW MAKEINTRESOURCE(32512) #define IDC_IBEAM MAKEINTRESOURCE(32513) #define IDC_WAIT MAKEINTRESOURCE(32514) @@ -2447,6 +2450,88 @@ typedef struct tagSTYLESTRUCT { DWORD styleOld; DWORD styleNew; } STYLESTRUCT,*LPSTYLESTRUCT; +typedef struct tagALTTABINFO { + DWORD cbSize; + int cItems; + int cColumns; + int cRows; + int iColFocus; + int iRowFocus; + int cxItem; + int cyItem; + POINT ptStart; +} ALTTABINFO, *PALTTABINFO, *LPALTTABINFO; +typedef struct tagCOMBOBOXINFO { + DWORD cbSize; + RECT rcItem; + RECT rcButton; + DWORD stateButton; + HWND hwndCombo; + HWND hwndItem; + HWND hwndList; +} COMBOBOXINFO, *PCOMBOBOXINFO, *LPCOMBOBOXINFO; +typedef struct tagCURSORINFO { + DWORD cbSize; + DWORD flags; + HCURSOR hCursor; + POINT ptScreenPos; +} CURSORINFO,*PCURSORINFO,*LPCURSORINFO; +typedef struct tagMENUBARINFO { + DWORD cbSize; + RECT rcBar; + HMENU hMenu; + HWND hwndMenu; + BOOL fBarFocused:1; + BOOL fFocused:1; +} MENUBARINFO, *PMENUBARINFO; +typedef struct tagMENUINFO { + DWORD cbSize; + DWORD fMask; + DWORD dwStyle; + UINT cyMax; + HBRUSH hbrBack; + DWORD dwContextHelpID; + ULONG_PTR dwMenuData; +} MENUINFO, *LPMENUINFO; +typedef MENUINFO CONST *LPCMENUINFO; +#define CCHILDREN_SCROLLBAR 5 +typedef struct tagSCROLLBARINFO { + DWORD cbSize; + RECT rcScrollBar; + int dxyLineButton; + int xyThumbTop; + int xyThumbBottom; + int reserved; + DWORD rgstate[CCHILDREN_SCROLLBAR + 1]; +} SCROLLBARINFO, *PSCROLLBARINFO, *LPSCROLLBARINFO; +#define CCHILDREN_TITLEBAR 5 +typedef struct tagTITLEBARINFO { + DWORD cbSize; + RECT rcTitleBar; + DWORD rgstate[CCHILDREN_TITLEBAR + 1]; +} TITLEBARINFO, *PTITLEBARINFO, *LPTITLEBARINFO; +typedef struct tagWINDOWINFO { + DWORD cbSize; + RECT rcWindow; + RECT rcClient; + DWORD dwStyle; + DWORD dwExStyle; + DWORD dwWindowStatus; + UINT cxWindowBorders; + UINT cyWindowBorders; + ATOM atomWindowType; + WORD wCreatorVersion; +} WINDOWINFO, *PWINDOWINFO, *LPWINDOWINFO; +typedef struct tagLASTINPUTINFO { + UINT cbSize; + DWORD dwTime; +} LASTINPUTINFO, * PLASTINPUTINFO; +typedef struct tagMONITORINFO { + DWORD cbSize; + RECT rcMonitor; + RECT rcWork; + DWORD dwFlags; +} MONITORINFO,*LPMONITORINFO; #define AnsiToOem CharToOemA #define OemToAnsi OemToCharA @@ -2613,6 +2698,7 @@ BOOL WINAPI EnableScrollBar(HWND,UINT,UINT); BOOL WINAPI EnableWindow(HWND,BOOL); BOOL WINAPI EndDeferWindowPos(HDWP); BOOL WINAPI EndDialog(HWND,int); +BOOL WINAPI EndMenu(VOID); BOOL WINAPI EndPaint(HWND,const PAINTSTRUCT*); BOOL WINAPI EnumChildWindows(HWND,ENUMWINDOWSPROC,LPARAM); UINT WINAPI EnumClipboardFormats(UINT); @@ -2747,6 +2833,21 @@ int WINAPI GetWindowTextLengthA(HWND); int WINAPI GetWindowTextLengthW(HWND); int WINAPI GetWindowTextW(HWND,LPWSTR,int); WORD WINAPI GetWindowWord(HWND,int); +BOOL WINAPI GetAltTabInfoA(HWND,int,PALTTABINFO,LPSTR,UINT); +BOOL WINAPI GetAltTabInfoW(HWND,int,PALTTABINFO,LPWSTR,UINT); +BOOL WINAPI GetComboBoxInfo(HWND,PCOMBOBOXINFO); +BOOL WINAPI GetCursorInfo(PCURSORINFO); +BOOL WINAPI GetLastInputInfo(PLASTINPUTINFO); +DWORD WINAPI GetListBoxInfo(HWND); +BOOL WINAPI GetMenuBarInfo(HWND,LONG,LONG,PMENUBARINFO); +BOOL WINAPI GetMenuInfo(HMENU,LPMENUINFO); +BOOL WINAPI GetScrollBarInfo(HWND,LONG,PSCROLLBARINFO); +BOOL WINAPI GetTitleBarInfo(HWND,PTITLEBARINFO); +BOOL WINAPI GetWindowInfo(HWND,PWINDOWINFO); +BOOL WINAPI GetMonitorInfoA(HMONITOR,LPMONITORINFO); +BOOL WINAPI GetMonitorInfoW(HMONITOR,LPMONITORINFO); +UINT WINAPI GetWindowModuleFileNameA(HWND,LPSTR,UINT); +UINT WINAPI GetWindowModuleFileNameW(HWND,LPWSTR,UINT); BOOL WINAPI GrayStringA(HDC,HBRUSH,GRAYSTRINGPROC,LPARAM,int,int,int,int,int); BOOL WINAPI GrayStringW(HDC,HBRUSH,GRAYSTRINGPROC,LPARAM,int,int,int,int,int); BOOL WINAPI HideCaret(HWND); @@ -2903,6 +3004,7 @@ BOOL WINAPI SetKeyboardState(PBYTE); BOOL WINAPI SetMenu(HWND,HMENU); BOOL WINAPI SetMenuContextHelpId(HMENU,DWORD); BOOL WINAPI SetMenuDefaultItem(HMENU,UINT,UINT); +BOOL WINAPI SetMenuInfo(HMENU,LPCMENUINFO); BOOL WINAPI SetMenuItemBitmaps(HMENU,UINT,UINT,HBITMAP,HBITMAP); BOOL WINAPI SetMenuItemInfoA(HMENU,UINT,BOOL,LPCMENUITEMINFOA); BOOL WINAPI SetMenuItemInfoW( HMENU,UINT,BOOL,LPCMENUITEMINFOW); @@ -3070,12 +3172,15 @@ typedef MULTIKEYHELPW MULTIKEYHELP,*PMULTIKEYHELP,*LPMULTIKEYHELP; #define GetMenuItemInfo GetMenuItemInfoW #define GetMenuString GetMenuStringW #define GetMessage GetMessageW +#define GetMonitorInfo GetMonitorInfoW #define GetProp GetPropW #define GetTabbedTextExtent GetTabbedTextExtentW #define GetUserObjectInformation GetUserObjectInformationW #define GetWindowLong GetWindowLongW #define GetWindowText GetWindowTextW #define GetWindowTextLength GetWindowTextLengthW +#define GetAltTabInfo GetAltTabInfoW +#define GetWindowModuleFileName GetWindowModuleFileNameW #define GrayString GrayStringW #define InsertMenu InsertMenuW #define InsertMenuItem InsertMenuItemW @@ -3218,12 +3323,15 @@ typedef MULTIKEYHELPA MULTIKEYHELP,*PMULTIKEYHELP,*LPMULTIKEYHELP; #define GetMenuItemInfo GetMenuItemInfoA #define GetMenuString GetMenuStringA #define GetMessage GetMessageA +#define GetMonitorInfo GetMonitorInfoA #define GetProp GetPropA #define GetTabbedTextExtent GetTabbedTextExtentA #define GetUserObjectInformation GetUserObjectInformationA #define GetWindowLong GetWindowLongA #define GetWindowText GetWindowTextA #define GetWindowTextLength GetWindowTextLengthA +#define GetAltTabInfo GetAltTabInfoA +#define GetWindowModuleFileName GetWindowModuleFileNameA #define GrayString GrayStringA #define InsertMenu InsertMenuA #define InsertMenuItem InsertMenuItemA diff --git a/winsup/w32api/lib/advapi32.def b/winsup/w32api/lib/advapi32.def index 7cceaa1..0c75d8e 100644 --- a/winsup/w32api/lib/advapi32.def +++ b/winsup/w32api/lib/advapi32.def @@ -5,10 +5,25 @@ AbortSystemShutdownW@4 AccessCheck@32 AccessCheckAndAuditAlarmA@44 AccessCheckAndAuditAlarmW@44 +AccessCheckByType@44 +AccessCheckByTypeAndAuditAlarmA@64 +AccessCheckByTypeAndAuditAlarmW@64 +AccessCheckByTypeResultList@44 +AccessCheckByTypeResultListAndAuditAlarmA@64 +AccessCheckByTypeResultListAndAuditAlarmByHandleA@68 +AccessCheckByTypeResultListAndAuditAlarmByHandleW@68 +AccessCheckByTypeResultListAndAuditAlarmW@64 AddAccessAllowedAce@16 +AddAccessAllowedAceEx@20 +AddAccessAllowedObjectAce@28 AddAccessDeniedAce@16 +AddAccessDeniedAceEx@20 +AddAccessDeniedObjectAce@28 AddAce@20 AddAuditAccessAce@24 +AddAuditAccessAceEx@28 +AddAuditAccessObjectAce@36 +AddUsersToEncryptedFile@8 AdjustTokenGroups@24 AdjustTokenPrivileges@24 AllocateAndInitializeSid@44 @@ -17,34 +32,87 @@ AreAllAccessesGranted@8 AreAnyAccessesGranted@8 BackupEventLogA@8 BackupEventLogW@8 -BuildExplicitAccessWithName@20 -BuildSecurityDescriptor@36 -BuildTrusteeWithName@8 -BuildTrusteeWithSid@8 +BuildExplicitAccessWithNameA@20 +BuildExplicitAccessWithNameW@20 +BuildImpersonateExplicitAccessWithNameA@24 +BuildImpersonateExplicitAccessWithNameW@24 +BuildImpersonateTrusteeA@8 +BuildImpersonateTrusteeW@8 +BuildSecurityDescriptorA@36 +BuildSecurityDescriptorW@36 +BuildTrusteeWithNameA@8 +BuildTrusteeWithNameW@8 +BuildTrusteeWithObjectsAndNameA@24 +BuildTrusteeWithObjectsAndNameW@24 +BuildTrusteeWithObjectsAndSidA@20 +BuildTrusteeWithObjectsAndSidW@20 +BuildTrusteeWithSidA@8 +BuildTrusteeWithSidW@8 +CancelOverlappedAccess@4 +ChangeServiceConfig2A@12 +ChangeServiceConfig2W@12 ChangeServiceConfigA@44 ChangeServiceConfigW@44 +CheckTokenMembership@12 ClearEventLogA@8 ClearEventLogW@8 +CloseEncryptedFileRaw@4 CloseEventLog@4 CloseServiceHandle@4 +CloseTrace@8 +CommandLineFromMsiDescriptor@12 ControlService@12 +ControlTraceA@20 +ControlTraceW@20 +ConvertAccessToSecurityDescriptorA@20 +ConvertAccessToSecurityDescriptorW@20 +ConvertSDToStringSDRootDomainA@24 +ConvertSDToStringSDRootDomainW@24 +ConvertSecurityDescriptorToAccessA@28 +ConvertSecurityDescriptorToAccessNamedA@28 +ConvertSecurityDescriptorToAccessNamedW@28 +ConvertSecurityDescriptorToAccessW@28 +ConvertSecurityDescriptorToStringSecurityDescriptorA@20 +ConvertSecurityDescriptorToStringSecurityDescriptorW@20 +ConvertSidToStringSidA@8 +ConvertSidToStringSidW@8 +ConvertStringSDToSDRootDomainA@20 +ConvertStringSDToSDRootDomainW@20 +ConvertStringSecurityDescriptorToSecurityDescriptorA@16 +ConvertStringSecurityDescriptorToSecurityDescriptorW@16 +ConvertStringSidToSidA@8 +ConvertStringSidToSidW@8 +ConvertToAutoInheritPrivateObjectSecurity@24 CopySid@12 CreatePrivateObjectSecurity@24 +CreatePrivateObjectSecurityEx@32 CreateProcessAsUserA@44 CreateProcessAsUserW@44 +CreateProcessWithLogonW@44 +CreateRestrictedToken@36 CreateServiceA@52 CreateServiceW@52 +CreateTraceInstanceId@8 CryptAcquireContextA@20 CryptAcquireContextW@20 +CryptContextAddRef@12 CryptCreateHash@20 CryptDecrypt@24 CryptDeriveKey@20 CryptDestroyHash@4 CryptDestroyKey@4 +CryptDuplicateHash@16 +CryptDuplicateKey@16 CryptEncrypt@28 +CryptEnumProviderTypesA@24 +CryptEnumProviderTypesW@24 +CryptEnumProvidersA@24 +CryptEnumProvidersW@24 CryptExportKey@24 CryptGenKey@16 CryptGenRandom@12 +CryptGetDefaultProviderA@20 +CryptGetDefaultProviderW@20 CryptGetHashParam@20 CryptGetKeyParam@20 CryptGetProvParam@20 @@ -57,15 +125,20 @@ CryptSetHashParam@16 CryptSetKeyParam@16 CryptSetProvParam@16 CryptSetProviderA@8 +CryptSetProviderExA@16 +CryptSetProviderExW@16 CryptSetProviderW@8 CryptSignHashA@24 CryptSignHashW@24 CryptVerifySignatureA@24 CryptVerifySignatureW@24 +DecryptFileA@8 +DecryptFileW@8 DeleteAce@8 DeleteService@4 DeregisterEventSource@4 DestroyPrivateObjectSecurity@4 +DuplicateEncryptionInfoFile@8 DuplicateToken@12 DuplicateTokenEx@24 ElfBackupEventLogFileA@8 @@ -87,31 +160,66 @@ ElfRegisterEventSourceA@12 ElfRegisterEventSourceW@12 ElfReportEventA@48 ElfReportEventW@48 +EnableTrace@24 +EncryptFileA@4 +EncryptFileW@4 +EncryptionDisable@8 EnumDependentServicesA@24 EnumDependentServicesW@24 +EnumServiceGroupW@36 EnumServicesStatusA@32 +EnumServicesStatusExA@40 +EnumServicesStatusExW@40 EnumServicesStatusW@32 EqualPrefixSid@8 EqualSid@8 +FileEncryptionStatusA@8 +FileEncryptionStatusW@8 FindFirstFreeAce@8 +FreeEncryptionCertificateHashList@4 FreeSid@4 +GetAccessPermissionsForObjectA@36 +GetAccessPermissionsForObjectW@36 GetAce@12 GetAclInformation@16 +GetAuditedPermissionsFromAclA@16 +GetAuditedPermissionsFromAclW@16 +GetCurrentHwProfileA@4 +GetCurrentHwProfileW@4 +GetEffectiveRightsFromAclA@12 +GetEffectiveRightsFromAclW@12 +GetEventLogInformation@20 +GetExplicitEntriesFromAclA@12 +GetExplicitEntriesFromAclW@12 GetFileSecurityA@20 GetFileSecurityW@20 GetKernelObjectSecurity@20 GetLengthSid@4 -GetNamedSecurityInfo@32 +GetLocalManagedApplications@12 +GetManagedApplications@20 +GetMangledSiteSid@12 +GetMultipleTrusteeA@4 +GetMultipleTrusteeOperationA@4 +GetMultipleTrusteeOperationW@4 +GetMultipleTrusteeW@4 +GetNamedSecurityInfoA@32 +GetNamedSecurityInfoExA@36 +GetNamedSecurityInfoExW@36 +GetNamedSecurityInfoW@32 GetNumberOfEventLogRecords@8 GetOldestEventLogRecord@8 +GetOverlappedAccessResults@16 GetPrivateObjectSecurity@20 GetSecurityDescriptorControl@12 GetSecurityDescriptorDacl@16 GetSecurityDescriptorGroup@12 GetSecurityDescriptorLength@4 GetSecurityDescriptorOwner@12 +GetSecurityDescriptorRMControl@8 GetSecurityDescriptorSacl@16 GetSecurityInfo@32 +GetSecurityInfoExA@36 +GetSecurityInfoExW@36 GetServiceDisplayNameA@16 GetServiceDisplayNameW@16 GetServiceKeyNameA@16 @@ -120,14 +228,26 @@ GetSidIdentifierAuthority@4 GetSidLengthRequired@4 GetSidSubAuthority@8 GetSidSubAuthorityCount@4 +GetSiteDirectoryA@12 +GetSiteDirectoryW@12 +GetSiteNameFromSid@8 +GetSiteSidFromToken@4 +GetSiteSidFromUrl@4 GetTokenInformation@20 -GetTrusteeForm@4 -GetTrusteeName@4 -GetTrusteeType@4 +GetTraceEnableFlags@8 +GetTraceEnableLevel@8 +GetTraceLoggerHandle@4 +GetTrusteeFormA@4 +GetTrusteeFormW@4 +GetTrusteeNameA@4 +GetTrusteeNameW@4 +GetTrusteeTypeA@4 +GetTrusteeTypeW@4 GetUserNameA@8 GetUserNameW@8 I_ScSetServiceBitsA@20 I_ScSetServiceBitsW@20 +ImpersonateAnonymousToken@4 ImpersonateLoggedOnUser@4 ImpersonateNamedPipeClient@4 ImpersonateSelf@4 @@ -135,8 +255,13 @@ InitializeAcl@12 InitializeSecurityDescriptor@8 InitializeSid@12 InitiateSystemShutdownA@20 +InitiateSystemShutdownExA@24 +InitiateSystemShutdownExW@24 InitiateSystemShutdownW@20 +InstallApplication@4 +IsProcessRestricted@0 IsTextUnicode@12 +IsTokenRestricted@4 IsValidAcl@4 IsValidSecurityDescriptor@4 IsValidSid@4 @@ -153,7 +278,8 @@ LookupPrivilegeNameA@16 LookupPrivilegeNameW@16 LookupPrivilegeValueA@12 LookupPrivilegeValueW@12 -LookupSecurityDescriptorParts@28 +LookupSecurityDescriptorPartsA@28 +LookupSecurityDescriptorPartsW@28 LsaAddAccountRights@16 LsaAddPrivilegesToAccount@8 LsaClearAuditLog@4 @@ -161,6 +287,7 @@ LsaClose@4 LsaCreateAccount@16 LsaCreateSecret@16 LsaCreateTrustedDomain@16 +LsaCreateTrustedDomainEx@20 LsaDelete@4 LsaDeleteTrustedDomain@8 LsaEnumerateAccountRights@16 @@ -169,11 +296,14 @@ LsaEnumerateAccountsWithUserRight@16 LsaEnumeratePrivileges@20 LsaEnumeratePrivilegesOfAccount@8 LsaEnumerateTrustedDomains@20 +LsaEnumerateTrustedDomainsEx@20 LsaFreeMemory@4 LsaGetQuotasForAccount@8 +LsaGetRemoteUserName@12 LsaGetSystemAccessAccount@8 -LsaICLookupNames@28 -LsaICLookupSids@28 +LsaGetUserName@8 +LsaICLookupNames@32 +LsaICLookupSids@32 LsaLookupNames@20 LsaLookupPrivilegeDisplayName@16 LsaLookupPrivilegeName@12 @@ -184,22 +314,28 @@ LsaOpenAccount@16 LsaOpenPolicy@16 LsaOpenSecret@16 LsaOpenTrustedDomain@16 +LsaOpenTrustedDomainByName@16 +LsaQueryDomainInformationPolicy@12 LsaQueryInfoTrustedDomain@12 LsaQueryInformationPolicy@12 LsaQuerySecret@20 LsaQuerySecurityObject@12 LsaQueryTrustedDomainInfo@16 +LsaQueryTrustedDomainInfoByName@16 LsaRemoveAccountRights@20 LsaRemovePrivilegesFromAccount@12 LsaRetrievePrivateData@12 +LsaSetDomainInformationPolicy@12 LsaSetInformationPolicy@12 LsaSetInformationTrustedDomain@12 LsaSetQuotasForAccount@8 LsaSetSecret@12 LsaSetSecurityObject@12 LsaSetSystemAccessAccount@8 +LsaSetTrustedDomainInfoByName@16 LsaSetTrustedDomainInformation@16 LsaStorePrivateData@12 +MakeAbsoluteSD2@8 MakeAbsoluteSD@44 MakeSelfRelativeSD@12 MapGenericMask@8 @@ -215,6 +351,8 @@ ObjectPrivilegeAuditAlarmA@24 ObjectPrivilegeAuditAlarmW@24 OpenBackupEventLogA@8 OpenBackupEventLogW@8 +OpenEncryptedFileRawA@12 +OpenEncryptedFileRawW@12 OpenEventLogA@8 OpenEventLogW@8 OpenProcessToken@12 @@ -223,16 +361,27 @@ OpenSCManagerW@12 OpenServiceA@12 OpenServiceW@12 OpenThreadToken@16 +OpenTraceA@4 +OpenTraceW@4 PrivilegeCheck@12 PrivilegedServiceAuditAlarmA@20 PrivilegedServiceAuditAlarmW@20 +ProcessTrace@16 +QueryAllTracesA@12 +QueryAllTracesW@12 +QueryRecoveryAgentsOnEncryptedFile@8 +QueryServiceConfig2A@20 +QueryServiceConfig2W@20 QueryServiceConfigA@16 QueryServiceConfigW@16 QueryServiceLockStatusA@16 QueryServiceLockStatusW@16 QueryServiceObjectSecurity@20 QueryServiceStatus@8 +QueryServiceStatusEx@20 +QueryUsersOnEncryptedFile@8 QueryWindows31FilesMigration@4 +ReadEncryptedFileRaw@12 ReadEventLogA@28 ReadEventLogW@28 RegCloseKey@4 @@ -246,6 +395,7 @@ RegDeleteKeyA@8 RegDeleteKeyW@8 RegDeleteValueA@8 RegDeleteValueW@8 +RegDisablePredefinedCache@0 RegEnumKeyA@16 RegEnumKeyExA@32 RegEnumKeyExW@32 @@ -257,10 +407,13 @@ RegGetKeySecurity@16 RegLoadKeyA@12 RegLoadKeyW@12 RegNotifyChangeKeyValue@20 +RegOpenCurrentUser@8 RegOpenKeyA@12 RegOpenKeyExA@20 RegOpenKeyExW@20 RegOpenKeyW@12 +RegOpenUserClassesRoot@16 +RegOverridePredefKey@8 RegQueryInfoKeyA@48 RegQueryInfoKeyW@48 RegQueryMultipleValuesA@20 @@ -285,31 +438,54 @@ RegUnLoadKeyW@8 RegisterEventSourceA@8 RegisterEventSourceW@8 RegisterServiceCtrlHandlerA@8 +RegisterServiceCtrlHandlerExA@12 +RegisterServiceCtrlHandlerExW@12 RegisterServiceCtrlHandlerW@8 +RegisterTraceGuidsA@32 +RegisterTraceGuidsW@32 +RemoveTraceCallback@4 +RemoveUsersFromEncryptedFile@8 ReportEventA@36 ReportEventW@36 RevertToSelf@0 SetAclInformation@16 -SetEntriesInAcl@16 +SetEntriesInAccessListA@24 +SetEntriesInAccessListW@24 +SetEntriesInAclA@16 +SetEntriesInAclW@16 +SetEntriesInAuditListA@24 +SetEntriesInAuditListW@24 SetFileSecurityA@12 SetFileSecurityW@12 SetKernelObjectSecurity@12 -SetNamedSecurityInfo@28 +SetNamedSecurityInfoA@28 +SetNamedSecurityInfoExA@36 +SetNamedSecurityInfoExW@36 +SetNamedSecurityInfoW@28 SetPrivateObjectSecurity@20 +SetPrivateObjectSecurityEx@24 +SetSecurityDescriptorControl@12 SetSecurityDescriptorDacl@16 SetSecurityDescriptorGroup@12 SetSecurityDescriptorOwner@12 +SetSecurityDescriptorRMControl@8 SetSecurityDescriptorSacl@16 -SetSecurityInfo@@28 +SetSecurityInfo@28 +SetSecurityInfoExA@36 +SetSecurityInfoExW@36 SetServiceBits@16 SetServiceObjectSecurity@12 SetServiceStatus@8 SetThreadToken@8 SetTokenInformation@16 +SetTraceCallback@8 +SetUserFileEncryptionKey@4 StartServiceA@12 StartServiceCtrlDispatcherA@4 StartServiceCtrlDispatcherW@4 StartServiceW@12 +StartTraceA@12 +StartTraceW@12 SynchronizeWindows31FilesAndWindowsNTRegistry@16 SystemFunction001@12 SystemFunction002@12 @@ -344,7 +520,12 @@ SystemFunction030@8 SystemFunction031@8 SystemFunction032@8 SystemFunction033@8 +SystemFunction034@12 +TraceEvent@12 +TraceEventInstance@20 +TrusteeAccessToObjectA@24 +TrusteeAccessToObjectW@24 +UninstallApplication@4 UnlockServiceDatabase@4 -WinLoadTrustProvider@4 -WinSubmitCertificate@4 -WinVerifyTrust@12 +UnregisterTraceGuids@8 +WriteEncryptedFileRaw@12 diff --git a/winsup/w32api/lib/dinput.c b/winsup/w32api/lib/dinput.c index 16580fb..1d022a4 100644 --- a/winsup/w32api/lib/dinput.c +++ b/winsup/w32api/lib/dinput.c @@ -21,7 +21,7 @@ Nothing. */ -#if defined(__LCC__) || defined(__GNUC__) +#if defined(__LCC__) || defined(__GNUC__) || defined(__WATCOMC__) #include <windows.h> #include <objbase.h> #else diff --git a/winsup/w32api/lib/iphlpapi.def b/winsup/w32api/lib/iphlpapi.def index 294c752..f4b0888 100644 --- a/winsup/w32api/lib/iphlpapi.def +++ b/winsup/w32api/lib/iphlpapi.def @@ -1,9 +1,16 @@ LIBRARY "IPHLPAPI.DLL" EXPORTS +AddIPAddress@20 CreateIpForwardEntry@4 CreateIpNetEntry@4 +CreateProxyArpEntry@12 +DeleteIPAddress@4 DeleteIpForwardEntry@4 DeleteIpNetEntry@4 +DeleteProxyArpEntry@12 +EnableRouter@8 +FlushIpNetTable@4 +GetAdapterIndex@8 GetAdaptersInfo@8 GetBestInterface@8 GetBestRoute@12 @@ -18,16 +25,21 @@ GetIpNetTable@12 GetIpStatistics@4 GetNetworkParams@8 GetNumberOfInterfaces@4 +GetPerAdapterInfo@12 GetRTTAndHopCount@16 GetTcpStatistics@4 GetTcpTable@12 GetUdpStatistics@4 GetUdpTable@12 +GetUniDirectionalAdapterInfo@8 IpReleaseAddress@4 IpRenewAddress@4 +SendARP@16 +SetAdapterIpAddress@20 SetIfEntry@4 SetIpForwardEntry@4 SetIpNetEntry@4 SetIpStatistics@4 SetIpTTL@4 SetTcpEntry@4 +UnenableRouter@8 diff --git a/winsup/w32api/lib/kernel32.c b/winsup/w32api/lib/kernel32.c index c7c4b18..d66a506 100644 --- a/winsup/w32api/lib/kernel32.c +++ b/winsup/w32api/lib/kernel32.c @@ -1,5 +1,7 @@ /* extern (library) versions of inline functions defined in winnt.h */ +#if defined(__GNUC__) + void* GetCurrentFiber(void) { void* ret; @@ -23,3 +25,27 @@ void* GetFiberData(void) return ret; } +#else + +void* GetCurrentFiber(void) +{ + void* res; + _asm { + mov eax, dword ptr fs:0x10 + mov res, eax + }; + return res; +} + +void* GetFiberData(void) +{ + void* res; + _asm { + mov eax, dword ptr fs:0x10 + mov eax, [eax] + mov res, eax + }; + return res; +} + +#endif /* __GNUC__ */ diff --git a/winsup/w32api/lib/scrnsave.c b/winsup/w32api/lib/scrnsave.c index 9efa573..53e555d 100644 --- a/winsup/w32api/lib/scrnsave.c +++ b/winsup/w32api/lib/scrnsave.c @@ -155,8 +155,8 @@ int APIENTRY WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, case '-': case '/': case ' ': - default: - ; + default: + break; } } LaunchConfig(); diff --git a/winsup/w32api/lib/test.c b/winsup/w32api/lib/test.c index b109629..2d9284c 100644 --- a/winsup/w32api/lib/test.c +++ b/winsup/w32api/lib/test.c @@ -56,6 +56,7 @@ #include <winsock.h> #include <ws2tcpip.h> #include <setupapi.h> +#include <aclapi.h> #ifndef __OBJC__ /* problems with BOOL */ #include <ole2.h> diff --git a/winsup/w32api/lib/user32.def b/winsup/w32api/lib/user32.def index b5acc47..e8e3628 100644 --- a/winsup/w32api/lib/user32.def +++ b/winsup/w32api/lib/user32.def @@ -171,6 +171,7 @@ EnableScrollBar@12 EnableWindow@8 EndDeferWindowPos@4 EndDialog@8 +EndMenu@0 EndPaint@8 EnumChildWindows@12 EnumClipboardFormats@4 @@ -198,6 +199,9 @@ FindWindowW@8 FlashWindow@8 FrameRect@12 FreeDDElParam@8 +GetAltTabInfo@20 +GetAltTabInfoA@20 +GetAltTabInfoW@20 GetActiveWindow@0 GetAsyncKeyState@4 GetCapture@0 @@ -219,7 +223,9 @@ GetClipboardFormatNameA@12 GetClipboardFormatNameW@12 GetClipboardOwner@0 GetClipboardViewer@0 +GetComboBoxInfo@8 GetCursor@0 +GetCursorInfo@4 GetCursorPos@4 GetDC@4 GetDCEx@12 @@ -247,10 +253,14 @@ GetKeyboardLayoutNameW@4 GetKeyboardState@4 GetKeyboardType@4 GetLastActivePopup@4 +GetLastInputInfo@4 +GetListBoxInfo@4 GetMenu@4 +GetMenuBarInfo@16 GetMenuCheckMarkDimensions@0 GetMenuContextHelpId@4 GetMenuDefaultItem@12 +GetMenuInfo@8 GetMenuItemCount@4 GetMenuItemID@8 GetMenuItemInfoA@16 @@ -264,6 +274,8 @@ GetMessageExtraInfo@0 GetMessagePos@0 GetMessageTime@0 GetMessageW@16 +GetMonitorInfoA@8 +GetMonitorInfoW@8 GetNextDlgGroupItem@12 GetNextDlgTabItem@12 GetOpenClipboardWindow@0 @@ -273,6 +285,7 @@ GetProcessWindowStation@0 GetPropA@8 GetPropW@8 GetQueueStatus@4 +GetScrollBarInfo@12 GetScrollInfo@12 GetScrollPos@8 GetScrollRange@16 @@ -285,6 +298,7 @@ GetSystemMetrics@4 GetTabbedTextExtentA@20 GetTabbedTextExtentW@20 GetThreadDesktop@4 +GetTitleBarInfo@8 GetTopWindow@4 GetUpdateRect@12 GetUpdateRgn@12 @@ -295,8 +309,12 @@ GetWindow@8 GetWindowContextHelpId@4 _imp__GetWindowContextHelpId@4 GetWindowDC@4 +GetWindowInfo@8 GetWindowLongA@8 GetWindowLongW@8 +GetWindowModuleFileName@12 +GetWindowModuleFileNameA@12 +GetWindowModuleFileNameW@12 GetWindowPlacement@8 GetWindowRect@8 GetWindowRgn@8 @@ -467,6 +485,7 @@ SetMenu@8 SetMenuContextHelpId@8 _imp__SetMenuContextHelpId@8 SetMenuDefaultItem@12 +SetMenuInfo@8 SetMenuItemBitmaps@20 SetMenuItemInfoA@16 SetMenuItemInfoW@16 |