cpp_quote("#ifndef _DTYP_IDL") cpp_quote("#define _DTYP_IDL") /* Common data types */ cpp_quote("#ifndef _WINDEF_H") typedef int BOOL, *PBOOL, *LPBOOL; typedef unsigned char BYTE, *PBYTE, *LPBYTE; typedef unsigned long DWORD, *PDWORD, *LPDWORD; cpp_quote("#endif") cpp_quote("#ifndef _BASETSD_H") typedef unsigned int DWORD32; typedef unsigned __int64 DWORD64; cpp_quote("#endif") //typedef unsigned long error_status_t; cpp_quote("#ifndef _WINDEF_H") typedef int INT, *LPINT; cpp_quote("#endif") cpp_quote("#ifndef _BASETSD_H") typedef signed char INT8; typedef signed short INT16; typedef signed int INT32; typedef signed __int64 INT64; cpp_quote("#endif") cpp_quote("#ifndef _BASETSD_H") typedef signed int LONG32; typedef signed __int64 LONG64; cpp_quote("#endif") typedef unsigned __int64 QWORD; cpp_quote("#ifndef _WINNT_H") typedef short SHORT; cpp_quote("#endif") typedef __int64 TIME; cpp_quote("#ifndef _WINNT_H") typedef char CHAR, *PCHAR; typedef unsigned char UCHAR, *PUCHAR; cpp_quote("#endif") cpp_quote("#ifndef _WINDEF_H") typedef unsigned int UINT; cpp_quote("#endif") cpp_quote("#ifndef _BASETSD_H") typedef unsigned char UINT8; typedef unsigned short UINT16; typedef unsigned int UINT32; typedef unsigned __int64 UINT64; cpp_quote("#endif") cpp_quote("#ifndef _WINNT_H") typedef unsigned long ULONG, *PULONG; cpp_quote("#endif") cpp_quote("#ifndef _BASETSD_H") typedef unsigned int ULONG32; typedef unsigned __int64 ULONG64; cpp_quote("#endif") cpp_quote("#ifndef _WINNT_H") typedef unsigned __int64 ULONGLONG; typedef unsigned short USHORT; cpp_quote("#endif") cpp_quote("#ifndef _WINDEF_H") typedef unsigned short WORD, *PWORD, *LPWORD; cpp_quote("#endif") cpp_quote("#ifndef _WINNT_H") typedef long LONG, *PLONG; cpp_quote("#endif") cpp_quote("#ifndef _WINDEF_H") typedef long *LPLONG; cpp_quote("#endif") cpp_quote("#ifndef _WINNT_H") typedef signed __int64 LONGLONG; cpp_quote("#endif") cpp_quote("#ifndef _WINDEF_H") typedef float FLOAT; cpp_quote("#endif") cpp_quote("#ifndef __wtypes_h__") typedef double DOUBLE; cpp_quote("#endif") cpp_quote("#ifndef _WINNT_H") typedef BYTE BOOLEAN, *PBOOLEAN; cpp_quote("#endif") cpp_quote("#ifndef _BASETSD_H") #ifdef _WIN64 typedef __int64 LONG_PTR; typedef unsigned __int64 ULONG_PTR; #else typedef LONG LONG_PTR; typedef ULONG ULONG_PTR; #endif typedef ULONG_PTR SIZE_T; typedef ULONG_PTR DWORD_PTR; cpp_quote("#endif") typedef DWORD NET_API_STATUS; cpp_quote("#ifndef _WINNT_H") typedef ULONGLONG DWORDLONG, *PDWORDLONG; cpp_quote("#endif") typedef DWORD HCALL; //typedef DWORD HRESULT; cpp_quote("#ifndef _WINNT_H") typedef void *HANDLE; typedef void /*VOID,*/ *PVOID; cpp_quote("#endif") cpp_quote("#ifndef __WINE_RPCDCE_H") typedef void *RPC_BINDING_HANDLE; cpp_quote("#endif") typedef [context_handle] void *PCONTEXT_HANDLE; typedef PCONTEXT_HANDLE *PPCONTEXT_HANDLE; cpp_quote("#ifndef _WINNT_H") typedef wchar_t WCHAR, *PWCHAR; cpp_quote("#if 0") typedef wchar_t UNICODE; cpp_quote("#endif") typedef const char *LPCSTR; typedef const wchar_t *LPCWSTR; typedef char *PSTR, *LPSTR; typedef wchar_t *LPWSTR, *PWSTR; cpp_quote("#endif") typedef const wchar_t *LMCSTR; typedef WCHAR *LMSTR; cpp_quote("#ifndef __wtypes_h__") typedef WCHAR *BSTR; cpp_quote("#endif") cpp_quote("#if 0") #ifdef Unicode typedef LPCWSTR LPCTSTR; typedef LPWSTR LPTSTR; typedef WCHAR TCHAR; #else typedef LPCSTR LPCTSTR; typedef LPSTR LPTSTR; typedef CHAR TCHAR; #endif cpp_quote("#endif") /* Common data structures */ cpp_quote("#if 0") typedef struct _FILETIME { DWORD dwLowDateTime; DWORD dwHighDateTime; } FILETIME, *PFILETIME, *LPFILETIME; typedef struct _GUID { DWORD Data1; WORD Data2; WORD Data3; BYTE Data4[8]; } GUID, UUID, *PGUID; typedef struct _LARGE_INTEGER { LONGLONG QuadPart; } LARGE_INTEGER, *PLARGE_INTEGER; typedef DWORD LCID; cpp_quote("#endif") typedef struct _RPC_UNICODE_STRING { USHORT Length; USHORT MaximumLength; [size_is(MaximumLength/2), length_is(Length/2)] LPWSTR Buffer; } RPC_UNICODE_STRING, *PRPC_UNICODE_STRING; cpp_quote("#if 0") typedef struct _SYSTEMTIME { WORD wYear; WORD wMonth; WORD wDayOfWeek; WORD wDay; WORD wHour; WORD wMinute; WORD wSecond; WORD wMilliseconds; } SYSTEMTIME, *PSYSTEMTIME; typedef struct _UINT128 { UINT64 lower; UINT64 upper; } UINT128, *PUINT128; typedef struct _ULARGE_INTEGER { ULONGLONG QuadPart; } ULARGE_INTEGER, *PULARGE_INTEGER; typedef struct _UNICODE_STRING { USHORT Length; USHORT MaximumLength; [size_is(MaximumLength/2), length_is(Length/2)] LPWSTR Buffer; } UNICODE_STRING, *PUNICODE_STRING; cpp_quote("#endif") /* Constructed security types */ cpp_quote("#if 0") typedef struct _SID_IDENTIFIER_AUTHORITY { BYTE Value[6]; } SID_IDENTIFIER_AUTHORITY; typedef struct _SID { BYTE Revision; BYTE SubAuthorityCount; SID_IDENTIFIER_AUTHORITY IdentifierAuthority; [size_is(SubAuthorityCount)] DWORD SubAuthority[*]; } SID, *PSID; typedef struct _ACCESS_MASK { DWORD ACCESS_MASK; } ACCESS_MASK, *PACCESS_MASK; typedef struct _ACE_HEADER { UCHAR AceType; UCHAR AceFlags; USHORT AceSize; } ACE_HEADER, *PACE_HEADER; typedef struct _ACCESS_ALLOWED_ACE { ACE_HEADER Header; ACCESS_MASK Mask; DWORD SidStart; } ACCESS_ALLOWED_ACE, *PACCESS_ALLOWED_ACE; typedef struct _ACCESS_ALLOWED_OBJECT_ACE { ACE_HEADER Header; ACCESS_MASK Mask; DWORD Flags; GUID ObjectType; GUID InheritedObjectType; DWORD SidStart; } ACCESS_ALLOWED_OBJECT_ACE, *PACCESS_ALLOWED_OBJECT_ACE; typedef struct _ACCESS_DENIED_ACE { ACE_HEADER Header; ACCESS_MASK Mask; DWORD SidStart; } ACCESS_DENIED_ACE, *PACCESS_DENIED_ACE; typedef struct _ACCESS_ALLOWED_CALLBACK_ACE { ACE_HEADER Header; ACCESS_MASK Mask; DWORD SidStart; } ACCESS_ALLOWED_CALLBACK_ACE, *PACCESS_ALLOWED_CALLBACK_ACE; typedef struct _ACCESS_DENIED_CALLBACK_ACE { ACE_HEADER Header; ACCESS_MASK Mask; DWORD SidStart; } ACCESS_DENIED_CALLBACK_ACE, *PACCESS_DENIED_CALLBACK_ACE; typedef struct _ACCESS_ALLOWED_CALLBACK_OBJECT_ACE { ACE_HEADER Header; ACCESS_MASK Mask; DWORD Flags; GUID ObjectType; GUID InheritedObjectType; DWORD SidStart; } ACCESS_ALLOWED_CALLBACK_OBJECT_ACE, *PACCESS_ALLOWED_CALLBACK_OBJECT_ACE; typedef struct _ACCESS_DENIED_CALLBACK_OBJECT_ACE { ACE_HEADER Header; ACCESS_MASK Mask; DWORD Flags; GUID ObjectType; GUID InheritedObjectType; DWORD SidStart; } ACCESS_DENIED_CALLBACK_OBJECT_ACE, *PACCESS_DENIED_CALLBACK_OBJECT_ACE; typedef struct _SYSTEM_AUDIT_ACE { ACE_HEADER Header; ACCESS_MASK Mask; DWORD SidStart; } SYSTEM_AUDIT_ACE, *PSYSTEM_AUDIT_ACE; typedef struct _SYSTEM_AUDIT_CALLBACK_ACE { ACE_HEADER Header; ACCESS_MASK Mask; DWORD SidStart; } SYSTEM_AUDIT_CALLBACK_ACE, *PSYSTEM_AUDIT_CALLBACK_ACE; typedef struct _SYSTEM_MANDATORY_LABEL_ACE { ACE_HEADER Header; ACCESS_MASK Mask; DWORD SidStart; } SYSTEM_MANDATORY_LABEL_ACE, *PSYSTEM_MANDATORY_LABEL_ACE; typedef struct _SYSTEM_AUDIT_CALLBACK_OBJECT_ACE { ACE_HEADER Header; ACCESS_MASK Mask; DWORD Flags; GUID ObjectType; GUID InheritedObjectType; DWORD SidStart; } SYSTEM_AUDIT_CALLBACK_OBJECT_ACE, *PSYSTEM_AUDIT_CALLBACK_OBJECT_ACE; typedef struct _ACL { UCHAR AclRevision; UCHAR Sbz1; USHORT AclSize; USHORT AceCount; USHORT Sbz2; } ACL, *PACL; typedef struct _SECURITY_DESCRIPTOR { UCHAR Revision; UCHAR Sbz1; USHORT Control; ULONG Owner; ULONG Group; ULONG Sacl; ULONG Dacl; } SECURITY_DESCRIPTOR, *PSECURITY_DESCRIPTOR; typedef DWORD SECURITY_INFORMATION, *PSECURITY_INFORMATION; cpp_quote("#endif") typedef struct _RPC_SID { UCHAR Revision; UCHAR SubAuthorityCount; SID_IDENTIFIER_AUTHORITY IdentifierAuthority; [size_is(SubAuthorityCount)] DWORD SubAuthority[]; } RPC_SID, *PRPC_SID; cpp_quote("#endif /* _DTYP_IDL */")