"Fossies" - the Fresh Open Source Software Archive

Member "FreeBASIC-1.09.0-win64/inc/win/adtgen.bi" (1 Jan 2022, 5779 Bytes) of package /windows/misc/FreeBASIC-1.09.0-win64.zip:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Visual Basic source code syntax highlighting (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 '' FreeBASIC binding for mingw-w64-v4.0.4
    2 ''
    3 '' based on the C header files:
    4 ''   This Software is provided under the Zope Public License (ZPL) Version 2.1.
    5 ''
    6 ''   Copyright (c) 2009, 2010 by the mingw-w64 project
    7 ''
    8 ''   See the AUTHORS file for the list of contributors to the mingw-w64 project.
    9 ''
   10 ''   This license has been certified as open source. It has also been designated
   11 ''   as GPL compatible by the Free Software Foundation (FSF).
   12 ''
   13 ''   Redistribution and use in source and binary forms, with or without
   14 ''   modification, are permitted provided that the following conditions are met:
   15 ''
   16 ''     1. Redistributions in source code must retain the accompanying copyright
   17 ''        notice, this list of conditions, and the following disclaimer.
   18 ''     2. Redistributions in binary form must reproduce the accompanying
   19 ''        copyright notice, this list of conditions, and the following disclaimer
   20 ''        in the documentation and/or other materials provided with the
   21 ''        distribution.
   22 ''     3. Names of the copyright holders must not be used to endorse or promote
   23 ''        products derived from this software without prior written permission
   24 ''        from the copyright holders.
   25 ''     4. The right to distribute this software or to use it for any purpose does
   26 ''        not give you the right to use Servicemarks (sm) or Trademarks (tm) of
   27 ''        the copyright holders.  Use of them is covered by separate agreement
   28 ''        with the copyright holders.
   29 ''     5. If any files are modified, you must cause the modified files to carry
   30 ''        prominent notices stating that you changed the files and the date of
   31 ''        any change.
   32 ''
   33 ''   Disclaimer
   34 ''
   35 ''   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY EXPRESSED
   36 ''   OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   37 ''   OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
   38 ''   EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY DIRECT, INDIRECT,
   39 ''   INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   40 ''   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, 
   41 ''   OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
   42 ''   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
   43 ''   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
   44 ''   EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   45 ''
   46 '' translated to FreeBASIC by:
   47 ''   Copyright © 2015 FreeBASIC development team
   48 
   49 #pragma once
   50 
   51 #include once "winapifamily.bi"
   52 
   53 #define _ADTGEN_H
   54 const AUDIT_TYPE_LEGACY = 1
   55 const AUDIT_TYPE_WMI = 2
   56 
   57 type _AUDIT_PARAM_TYPE as long
   58 enum
   59     APT_None = 1
   60     APT_String
   61     APT_Ulong
   62     APT_Pointer
   63     APT_Sid
   64     APT_LogonId
   65     APT_ObjectTypeList
   66     APT_Luid
   67     APT_Guid
   68     APT_Time
   69     APT_Int64
   70     APT_IpAddress
   71     APT_LogonIdWithSid
   72 end enum
   73 
   74 type AUDIT_PARAM_TYPE as _AUDIT_PARAM_TYPE
   75 const AP_ParamTypeBits = 8
   76 const AP_ParamTypeMask = &hff
   77 const AP_FormatHex = &h1 shl AP_ParamTypeBits
   78 const AP_AccessMask = &h2 shl AP_ParamTypeBits
   79 const AP_Filespec = &h1 shl AP_ParamTypeBits
   80 const AP_SidAsLogonId = &h1 shl AP_ParamTypeBits
   81 const AP_PrimaryLogonId = &h1 shl AP_ParamTypeBits
   82 const AP_ClientLogonId = &h2 shl AP_ParamTypeBits
   83 #define ApExtractType(TypeFlags) cast(AUDIT_PARAM_TYPE, TypeFlags and AP_ParamTypeMask)
   84 #define ApExtractFlags(TypeFlags) (TypeFlags and (not AP_ParamTypeMask))
   85 const _AUTHZ_SS_MAXSIZE = 128
   86 const APF_AuditFailure = &h0
   87 const APF_AuditSuccess = &h1
   88 const APF_ValidFlags = APF_AuditSuccess
   89 const AUTHZ_ALLOW_MULTIPLE_SOURCE_INSTANCES = &h1
   90 const AUTHZ_MIGRATED_LEGACY_PUBLISHER = &h2
   91 const AUTHZ_AUDIT_INSTANCE_INFORMATION = &h2
   92 
   93 type _AUDIT_OBJECT_TYPE
   94     ObjectType as GUID
   95     Flags as USHORT
   96     Level as USHORT
   97     AccessMask as ACCESS_MASK
   98 end type
   99 
  100 type AUDIT_OBJECT_TYPE as _AUDIT_OBJECT_TYPE
  101 type PAUDIT_OBJECT_TYPE as _AUDIT_OBJECT_TYPE ptr
  102 
  103 type _AUDIT_OBJECT_TYPES
  104     Count as USHORT
  105     Flags as USHORT
  106     pObjectTypes as AUDIT_OBJECT_TYPE ptr
  107 end type
  108 
  109 type AUDIT_OBJECT_TYPES as _AUDIT_OBJECT_TYPES
  110 type PAUDIT_OBJECT_TYPES as _AUDIT_OBJECT_TYPES ptr
  111 
  112 type _AUDIT_IP_ADDRESS
  113     pIpAddress(0 to 127) as UBYTE
  114 end type
  115 
  116 type AUDIT_IP_ADDRESS as _AUDIT_IP_ADDRESS
  117 type PAUDIT_IP_ADDRESS as _AUDIT_IP_ADDRESS ptr
  118 
  119 type _AUDIT_PARAM
  120     as AUDIT_PARAM_TYPE Type
  121     Length as ULONG
  122     Flags as DWORD
  123 
  124     union
  125         Data0 as ULONG_PTR
  126         String as PWSTR
  127         u as ULONG_PTR
  128         psid as SID ptr
  129         pguid as GUID ptr
  130         LogonId_LowPart as ULONG
  131         pObjectTypes as AUDIT_OBJECT_TYPES ptr
  132         pIpAddress as AUDIT_IP_ADDRESS ptr
  133     end union
  134 
  135     union
  136         Data1 as ULONG_PTR
  137         LogonId_HighPart as LONG
  138     end union
  139 end type
  140 
  141 type AUDIT_PARAM as _AUDIT_PARAM
  142 type PAUDIT_PARAM as _AUDIT_PARAM ptr
  143 
  144 type _AUDIT_PARAMS
  145     Length as ULONG
  146     Flags as DWORD
  147     Count as USHORT
  148     Parameters as AUDIT_PARAM ptr
  149 end type
  150 
  151 type AUDIT_PARAMS as _AUDIT_PARAMS
  152 type PAUDIT_PARAMS as _AUDIT_PARAMS ptr
  153 
  154 type _AUTHZ_AUDIT_EVENT_TYPE_LEGACY
  155     CategoryId as USHORT
  156     AuditId as USHORT
  157     ParameterCount as USHORT
  158 end type
  159 
  160 type AUTHZ_AUDIT_EVENT_TYPE_LEGACY as _AUTHZ_AUDIT_EVENT_TYPE_LEGACY
  161 type PAUTHZ_AUDIT_EVENT_TYPE_LEGACY as _AUTHZ_AUDIT_EVENT_TYPE_LEGACY ptr
  162 
  163 union _AUTHZ_AUDIT_EVENT_TYPE_UNION
  164     Legacy as AUTHZ_AUDIT_EVENT_TYPE_LEGACY
  165 end union
  166 
  167 type AUTHZ_AUDIT_EVENT_TYPE_UNION as _AUTHZ_AUDIT_EVENT_TYPE_UNION
  168 type PAUTHZ_AUDIT_EVENT_TYPE_UNION as _AUTHZ_AUDIT_EVENT_TYPE_UNION ptr
  169 
  170 type _AUTHZ_AUDIT_EVENT_TYPE_OLD
  171     Version as ULONG
  172     dwFlags as DWORD
  173     RefCount as LONG
  174     hAudit as ULONG_PTR
  175     LinkId as LUID
  176     u as AUTHZ_AUDIT_EVENT_TYPE_UNION
  177 end type
  178 
  179 type AUTHZ_AUDIT_EVENT_TYPE_OLD as _AUTHZ_AUDIT_EVENT_TYPE_OLD
  180 type PAUTHZ_AUDIT_EVENT_TYPE_OLD as AUTHZ_AUDIT_EVENT_TYPE_OLD ptr
  181 const AUTHZP_WPD_EVENT = &h10
  182 type AUDIT_HANDLE as PVOID
  183 type PAUDIT_HANDLE as PVOID ptr