| /* |
| * dsrole.h - Active Directory |
| * |
| * THIS SOFTWARE IS NOT COPYRIGHTED |
| * |
| * This source code is offered for use in the public domain. You may use, |
| * modify or distribute it freely. |
| * |
| * This code is distributed in the hope that it will be useful but |
| * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY |
| * DISCLAIMED. This includes but is not limited to warranties of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
| * |
| */ |
| #ifndef _DSROLE_H |
| #define _DSROLE_H |
| #if __GNUC__ >= 3 |
| #pragma GCC system_header |
| #endif |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| #if (_WIN32_WINNT >= 0x0500) |
| /*--- Active Directory Reference - Active Directory Enumerations */ |
| typedef enum { |
| DsRole_RoleStandaloneWorkstation, |
| DsRole_RoleMemberWorkstation, |
| DsRole_RoleStandaloneServer, |
| DsRole_RoleMemberServer, |
| DsRole_RoleBackupDomainController, |
| DsRole_RolePrimaryDomainController |
| } DSROLE_MACHINE_ROLE; |
| typedef enum { |
| DsRoleOperationIdle, |
| DsRoleOperationActive, |
| DsRoleOperationNeedReboot |
| } DSROLE_OPERATION_STATE; |
| typedef enum { |
| DsRolePrimaryDomainInfoBasic, |
| DsRoleUpgradeStatus, |
| DsRoleOperationState |
| } DSROLE_PRIMARY_DOMAIN_INFO_LEVEL; |
| typedef enum { |
| DsRoleServerUnknown, |
| DsRoleServerPrimary, |
| DsRoleServerBackup |
| } DSROLE_SERVER_STATE; |
| /*--- Active Directory Reference - Active Directory Structures - Directory Service Structures */ |
| typedef struct { |
| DSROLE_OPERATION_STATE OperationState; |
| } DSROLE_OPERATION_STATE_INFO; |
| typedef struct _DSROLE_PRIMARY_DOMAIN_INFO_BASIC { |
| DSROLE_MACHINE_ROLE MachineRole; |
| ULONG Flags; |
| LPWSTR DomainNameFlat; |
| LPWSTR DomainNameDns; |
| LPWSTR DomainForestName; |
| GUID DomainGuid; |
| } DSROLE_PRIMARY_DOMAIN_INFO_BASIC,*PDSROLE_PRIMARY_DOMAIN_INFO_BASIC; |
| #define DSROLE_PRIMARY_DS_RUNNING 0x00000001 |
| #define DSROLE_PRIMARY_DS_MIXED_MODE 0x00000002 |
| #define DSROLE_UPGRADE_IN_PROGRESS 0x00000004 |
| #define DSROLE_PRIMARY_DOMAIN_GUID_PRESENT 0x01000000 |
| typedef struct _DSROLE_UPGRADE_STATUS_INFO { |
| ULONG OperationState; |
| DSROLE_SERVER_STATE PreviousServerState; |
| } DSROLE_UPGRADE_STATUS_INFO,*PDSROLE_UPGRADE_STATUS_INFO; |
| #endif /* (_WIN32_WINNT >= 0x0500) */ |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| #endif |