123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190 |
- /**
- * This file is part of the mingw-w64 runtime package.
- * No warranty is given; refer to the file DISCLAIMER within this package.
- */
- #include <winapifamily.h>
- #ifndef _ADTGEN_H
- #define _ADTGEN_H
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
- #define AUDIT_TYPE_LEGACY 1
- #define AUDIT_TYPE_WMI 2
- typedef enum _AUDIT_PARAM_TYPE {
- APT_None = 1,
- APT_String,
- APT_Ulong,
- APT_Pointer,
- APT_Sid,
- APT_LogonId,
- APT_ObjectTypeList,
- APT_Luid,
- APT_Guid,
- APT_Time,
- APT_Int64,
- APT_IpAddress,
- APT_LogonIdWithSid
- } AUDIT_PARAM_TYPE;
- #define AP_ParamTypeBits 8
- #define AP_ParamTypeMask __MSABI_LONG(0xff)
- #define AP_FormatHex (__MSABI_LONG(0x1) << AP_ParamTypeBits)
- #define AP_AccessMask (__MSABI_LONG(0x2) << AP_ParamTypeBits)
- #define AP_Filespec (__MSABI_LONG(0x1) << AP_ParamTypeBits)
- #define AP_SidAsLogonId (__MSABI_LONG(0x1) << AP_ParamTypeBits)
- #define AP_PrimaryLogonId (__MSABI_LONG(0x1) << AP_ParamTypeBits)
- #define AP_ClientLogonId (__MSABI_LONG(0x2) << AP_ParamTypeBits)
- #define ApExtractType(TypeFlags) ((AUDIT_PARAM_TYPE) (TypeFlags & AP_ParamTypeMask))
- #define ApExtractFlags(TypeFlags) ((TypeFlags & ~AP_ParamTypeMask))
- #define _AUTHZ_SS_MAXSIZE 128
- #define APF_AuditFailure 0x0
- #define APF_AuditSuccess 0x1
- #define APF_ValidFlags (APF_AuditSuccess)
- #define AUTHZ_ALLOW_MULTIPLE_SOURCE_INSTANCES 0x1
- #define AUTHZ_MIGRATED_LEGACY_PUBLISHER 0x2
- #define AUTHZ_AUDIT_INSTANCE_INFORMATION 0x2
- typedef struct _AUDIT_OBJECT_TYPE {
- GUID ObjectType;
- USHORT Flags;
- USHORT Level;
- ACCESS_MASK AccessMask;
- } AUDIT_OBJECT_TYPE,*PAUDIT_OBJECT_TYPE;
- typedef struct _AUDIT_OBJECT_TYPES {
- USHORT Count;
- USHORT Flags;
- #ifdef __WIDL__
- [size_is (Count)]
- #endif
- AUDIT_OBJECT_TYPE *pObjectTypes;
- } AUDIT_OBJECT_TYPES,*PAUDIT_OBJECT_TYPES;
- typedef struct _AUDIT_IP_ADDRESS {
- BYTE pIpAddress[_AUTHZ_SS_MAXSIZE];
- } AUDIT_IP_ADDRESS,*PAUDIT_IP_ADDRESS;
- typedef struct _AUDIT_PARAM {
- AUDIT_PARAM_TYPE Type;
- ULONG Length;
- DWORD Flags;
- #ifdef __WIDL__
- [switch_type (AUDIT_PARAM_TYPE), switch_is (Type)]
- #else
- __C89_NAMELESS
- #endif
- union {
- #ifdef __WIDL__
- [default]
- #endif
- ULONG_PTR Data0;
- #ifdef __WIDL__
- [case (APT_String)]
- [string]
- #endif
- PWSTR String;
- #ifdef __WIDL__
- [case (APT_Ulong, APT_Pointer)]
- #endif
- ULONG_PTR u;
- #ifdef __WIDL__
- [case (APT_Sid)]
- #endif
- SID *psid;
- #ifdef __WIDL__
- [case (APT_Guid)]
- #endif
- GUID *pguid;
- #ifdef __WIDL__
- [case (APT_LogonId)]
- #endif
- ULONG LogonId_LowPart;
- #ifdef __WIDL__
- [case (APT_ObjectTypeList)]
- #endif
- AUDIT_OBJECT_TYPES *pObjectTypes;
- #ifdef __WIDL__
- [case (APT_IpAddress)]
- #endif
- AUDIT_IP_ADDRESS *pIpAddress;
- };
- #ifdef __WIDL__
- [switch_type (AUDIT_PARAM_TYPE), switch_is (Type)]
- #else
- __C89_NAMELESS
- #endif
- union {
- #ifdef __WIDL__
- [default]
- #endif
- ULONG_PTR Data1;
- #ifdef __WIDL__
- [case (APT_LogonId)]
- #endif
- LONG LogonId_HighPart;
- };
- } AUDIT_PARAM,*PAUDIT_PARAM;
- typedef struct _AUDIT_PARAMS {
- ULONG Length;
- DWORD Flags;
- USHORT Count;
- #ifdef __WIDL__
- [size_is (Count)]
- #endif
- AUDIT_PARAM *Parameters;
- } AUDIT_PARAMS,*PAUDIT_PARAMS;
- typedef struct _AUTHZ_AUDIT_EVENT_TYPE_LEGACY {
- USHORT CategoryId;
- USHORT AuditId;
- USHORT ParameterCount;
- } AUTHZ_AUDIT_EVENT_TYPE_LEGACY,*PAUTHZ_AUDIT_EVENT_TYPE_LEGACY;
- typedef
- #ifdef __WIDL__
- [switch_type (BYTE)]
- #endif
- union _AUTHZ_AUDIT_EVENT_TYPE_UNION {
- #ifdef __WIDL__
- [case (AUDIT_TYPE_LEGACY)]
- #endif
- AUTHZ_AUDIT_EVENT_TYPE_LEGACY Legacy;
- } AUTHZ_AUDIT_EVENT_TYPE_UNION,*PAUTHZ_AUDIT_EVENT_TYPE_UNION;
- typedef
- struct _AUTHZ_AUDIT_EVENT_TYPE_OLD {
- ULONG Version;
- DWORD dwFlags;
- LONG RefCount;
- ULONG_PTR hAudit;
- LUID LinkId;
- #ifdef __WIDL__
- [switch_is (Version)]
- #endif
- AUTHZ_AUDIT_EVENT_TYPE_UNION u;
- } AUTHZ_AUDIT_EVENT_TYPE_OLD;
- typedef
- #ifdef __WIDL__
- [handle]
- #endif
- AUTHZ_AUDIT_EVENT_TYPE_OLD *PAUTHZ_AUDIT_EVENT_TYPE_OLD;
- #define AUTHZP_WPD_EVENT 0x10
- typedef
- #ifdef __WIDL__
- [context_handle]
- #endif
- PVOID AUDIT_HANDLE,*PAUDIT_HANDLE;
- #endif
- #endif
|