holdingarea/llvm/llvm-gcc4.2-2.7-x86-mingw32/include/dsgetdc.h
branchbug235_bringup_0
changeset 20 d2d6724aef32
equal deleted inserted replaced
19:da7c1a80df0d 20:d2d6724aef32
       
     1 /*
       
     2  * dsgetdc.h - Active Directory
       
     3  *
       
     4  * THIS SOFTWARE IS NOT COPYRIGHTED
       
     5  *
       
     6  * This source code is offered for use in the public domain.  You may use,
       
     7  * modify or distribute it freely.
       
     8  *
       
     9  * This code is distributed in the hope that it will be useful but
       
    10  * WITHOUT ANY WARRANTY.  ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
       
    11  * DISCLAIMED.  This includes but is not limited to warranties of
       
    12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
       
    13  *
       
    14  */
       
    15 #ifndef _DSGETDC_H
       
    16 #define _DSGETDC_H
       
    17 #if __GNUC__ >= 3
       
    18 #pragma GCC system_header
       
    19 #endif
       
    20 
       
    21 #ifdef __cplusplus
       
    22 extern "C" {
       
    23 #endif
       
    24 
       
    25 /*--- Active Directory Reference - Active Directory Structures - Directory Service Structures */
       
    26 #if (_WIN32_WINNT >= 0x0500)
       
    27 typedef struct _DOMAIN_CONTROLLER_INFOA {
       
    28 	LPSTR DomainControllerName;
       
    29 	LPSTR DomainControllerAddress;
       
    30 	ULONG DomainControllerAddressType;
       
    31 	GUID DomainGuid;
       
    32 	LPSTR DomainName;
       
    33 	LPSTR DnsForestName;
       
    34 	ULONG Flags;
       
    35 	LPSTR DcSiteName;
       
    36 	LPSTR ClientSiteName;
       
    37 } DOMAIN_CONTROLLER_INFOA,*PDOMAIN_CONTROLLER_INFOA;
       
    38 typedef struct _DOMAIN_CONTROLLER_INFOW {
       
    39 	LPWSTR DomainControllerName;
       
    40 	LPWSTR DomainControllerAddress;
       
    41 	ULONG DomainControllerAddressType;
       
    42 	GUID DomainGuid;
       
    43 	LPWSTR DomainName;
       
    44 	LPWSTR DnsForestName;
       
    45 	ULONG Flags;
       
    46 	LPWSTR DcSiteName;
       
    47 	LPWSTR ClientSiteName;
       
    48 } DOMAIN_CONTROLLER_INFOW,*PDOMAIN_CONTROLLER_INFOW;
       
    49 #define DS_INET_ADDRESS 0x0001
       
    50 #define DS_NETBIOS_ADDRESS 0x0002
       
    51 #define DS_PDC_FLAG 0x00000001
       
    52 #define DS_GC_FLAG 0x00000004
       
    53 #define DS_DS_FLAG 0x00000010
       
    54 #define DS_KDC_FLAG 0x00000020
       
    55 #define DS_TIMESERV_FLAG 0x00000040
       
    56 #define DS_WRITABLE_FLAG 0x00000100
       
    57 #define DS_DNS_CONTROLLER_FLAG 0x20000000
       
    58 #define DS_DNS_DOMAIN_FLAG 0x40000000
       
    59 #define DS_DNS_FOREST_FLAG 0x80000000
       
    60 typedef struct _DS_DOMAIN_TRUSTSA {
       
    61 	LPSTR NetbiosDomainName;
       
    62 	LPSTR DnsDomainName;
       
    63 	ULONG Flags;
       
    64 	ULONG ParentIndex;
       
    65 	ULONG TrustType;
       
    66 	ULONG TrustAttributes;
       
    67 	PSID DomainSid;
       
    68 	GUID DomainGuid;
       
    69 } DS_DOMAIN_TRUSTSA,*PDS_DOMAIN_TRUSTSA;
       
    70 typedef struct _DS_DOMAIN_TRUSTSW {
       
    71 	LPWSTR NetbiosDomainName;
       
    72 	LPWSTR DnsDomainName;
       
    73 	ULONG Flags;
       
    74 	ULONG ParentIndex;
       
    75 	ULONG TrustType;
       
    76 	ULONG TrustAttributes;
       
    77 	PSID DomainSid;
       
    78 	GUID DomainGuid;
       
    79 } DS_DOMAIN_TRUSTSW,*PDS_DOMAIN_TRUSTSW;
       
    80 #define DS_DOMAIN_IN_FOREST 0x0001
       
    81 #define DS_DOMAIN_DIRECT_OUTBOUND 0x0002
       
    82 #define DS_DOMAIN_TREE_ROOT 0x0004
       
    83 #define DS_DOMAIN_PRIMARY 0x0008
       
    84 #define DS_DOMAIN_NATIVE_MODE 0x0010
       
    85 #define DS_DOMAIN_DIRECT_INBOUND 0x0020
       
    86 #ifdef UNICODE
       
    87 typedef DOMAIN_CONTROLLER_INFOW DOMAIN_CONTROLLER_INFO,*PDOMAIN_CONTROLLER_INFO;
       
    88 typedef DS_DOMAIN_TRUSTSW DS_DOMAIN_TRUSTS,*PDS_DOMAIN_TRUSTS;
       
    89 #else
       
    90 typedef DOMAIN_CONTROLLER_INFOA DOMAIN_CONTROLLER_INFO,*PDOMAIN_CONTROLLER_INFO;
       
    91 typedef DS_DOMAIN_TRUSTSA DS_DOMAIN_TRUSTS,*PDS_DOMAIN_TRUSTS;
       
    92 #endif
       
    93 #endif /* (_WIN32_WINNT >= 0x0500) */
       
    94 
       
    95 #ifdef __cplusplus
       
    96 }
       
    97 #endif
       
    98 #endif