00001 #pragma once
00002
00003 using namespace AppSecInc::Msi::Flags;
00004
00005 static const FlagMapEntry s_DirectoryServicesScopeTypes[] =
00006 {
00007 { L"DSOP_SCOPE_TYPE_TARGET_COMPUTER", DSOP_SCOPE_TYPE_TARGET_COMPUTER },
00008 { L"DSOP_SCOPE_TYPE_UPLEVEL_JOINED_DOMAIN", DSOP_SCOPE_TYPE_UPLEVEL_JOINED_DOMAIN },
00009 { L"DSOP_SCOPE_TYPE_DOWNLEVEL_JOINED_DOMAIN", DSOP_SCOPE_TYPE_UPLEVEL_JOINED_DOMAIN },
00010 { L"DSOP_SCOPE_TYPE_ENTERPRISE_DOMAIN", DSOP_SCOPE_TYPE_ENTERPRISE_DOMAIN },
00011 { L"DSOP_SCOPE_TYPE_GLOBAL_CATALOG", DSOP_SCOPE_TYPE_GLOBAL_CATALOG },
00012 { L"DSOP_SCOPE_TYPE_EXTERNAL_UPLEVEL_DOMAIN", DSOP_SCOPE_TYPE_EXTERNAL_UPLEVEL_DOMAIN },
00013 { L"DSOP_SCOPE_TYPE_EXTERNAL_DOWNLEVEL_DOMAIN", DSOP_SCOPE_TYPE_EXTERNAL_DOWNLEVEL_DOMAIN },
00014 { L"DSOP_SCOPE_TYPE_WORKGROUP", DSOP_SCOPE_TYPE_WORKGROUP },
00015 { L"DSOP_SCOPE_TYPE_USER_ENTERED_UPLEVEL_SCOPE", DSOP_SCOPE_TYPE_USER_ENTERED_UPLEVEL_SCOPE },
00016 { L"DSOP_SCOPE_TYPE_USER_ENTERED_DOWNLEVEL_SCOPE", DSOP_SCOPE_TYPE_USER_ENTERED_DOWNLEVEL_SCOPE },
00017 };
00018
00019 static const FlagMapEntry s_DirectoryServicesScopeFlags[] =
00020 {
00021 { L"DSOP_SCOPE_FLAG_STARTING_SCOPE", DSOP_SCOPE_FLAG_STARTING_SCOPE },
00022 { L"DSOP_SCOPE_FLAG_WANT_PROVIDER_WINNT", DSOP_SCOPE_FLAG_WANT_PROVIDER_WINNT },
00023 { L"DSOP_SCOPE_FLAG_WANT_PROVIDER_LDAP", DSOP_SCOPE_FLAG_WANT_PROVIDER_LDAP },
00024 { L"DSOP_SCOPE_FLAG_WANT_PROVIDER_GC", DSOP_SCOPE_FLAG_WANT_PROVIDER_GC },
00025 { L"DSOP_SCOPE_FLAG_WANT_SID_PATH", DSOP_SCOPE_FLAG_WANT_SID_PATH },
00026 { L"DSOP_SCOPE_FLAG_WANT_DOWNLEVEL_BUILTIN_PATH", DSOP_SCOPE_FLAG_WANT_DOWNLEVEL_BUILTIN_PATH },
00027 { L"DSOP_SCOPE_FLAG_DEFAULT_FILTER_USERS", DSOP_SCOPE_FLAG_DEFAULT_FILTER_USERS },
00028 { L"DSOP_SCOPE_FLAG_DEFAULT_FILTER_GROUPS", DSOP_SCOPE_FLAG_DEFAULT_FILTER_GROUPS },
00029 { L"DSOP_SCOPE_FLAG_DEFAULT_FILTER_COMPUTERS", DSOP_SCOPE_FLAG_DEFAULT_FILTER_COMPUTERS },
00030 { L"DSOP_SCOPE_FLAG_DEFAULT_FILTER_CONTACTS", DSOP_SCOPE_FLAG_DEFAULT_FILTER_CONTACTS }
00031 };
00032
00033 static const FlagMapEntry s_DirectoryServicesScopeFilterFlags[] =
00034 {
00035 { L"DSOP_FILTER_INCLUDE_ADVANCED_VIEW", DSOP_FILTER_INCLUDE_ADVANCED_VIEW },
00036 { L"DSOP_FILTER_USERS", DSOP_FILTER_USERS },
00037 { L"DSOP_FILTER_BUILTIN_GROUPS", DSOP_FILTER_BUILTIN_GROUPS },
00038 { L"DSOP_FILTER_WELL_KNOWN_PRINCIPALS", DSOP_FILTER_WELL_KNOWN_PRINCIPALS },
00039 { L"DSOP_FILTER_UNIVERSAL_GROUPS_DL", DSOP_FILTER_UNIVERSAL_GROUPS_DL },
00040 { L"DSOP_FILTER_UNIVERSAL_GROUPS_SE", DSOP_FILTER_UNIVERSAL_GROUPS_SE },
00041 { L"DSOP_FILTER_GLOBAL_GROUPS_DL", DSOP_FILTER_GLOBAL_GROUPS_DL },
00042 { L"DSOP_FILTER_GLOBAL_GROUPS_SE", DSOP_FILTER_GLOBAL_GROUPS_SE },
00043 { L"DSOP_FILTER_DOMAIN_LOCAL_GROUPS_DL", DSOP_FILTER_DOMAIN_LOCAL_GROUPS_DL },
00044 { L"DSOP_FILTER_DOMAIN_LOCAL_GROUPS_SE", DSOP_FILTER_DOMAIN_LOCAL_GROUPS_SE },
00045 { L"DSOP_FILTER_CONTACTS", DSOP_FILTER_CONTACTS },
00046 { L"DSOP_FILTER_COMPUTERS", DSOP_FILTER_COMPUTERS }
00047 };
00048
00049 static const FlagMapEntryUINT s_DirectoryServicesDownlevelScopeFilterFlags[] =
00050 {
00051 { L"DSOP_DOWNLEVEL_FILTER_USERS", DSOP_DOWNLEVEL_FILTER_USERS },
00052 { L"DSOP_DOWNLEVEL_FILTER_LOCAL_GROUPS", DSOP_DOWNLEVEL_FILTER_LOCAL_GROUPS },
00053 { L"DSOP_DOWNLEVEL_FILTER_GLOBAL_GROUPS", DSOP_DOWNLEVEL_FILTER_GLOBAL_GROUPS },
00054 { L"DSOP_DOWNLEVEL_FILTER_COMPUTERS", DSOP_DOWNLEVEL_FILTER_COMPUTERS },
00055 { L"DSOP_DOWNLEVEL_FILTER_WORLD", DSOP_DOWNLEVEL_FILTER_WORLD },
00056 { L"DSOP_DOWNLEVEL_FILTER_AUTHENTICATED_USER", DSOP_DOWNLEVEL_FILTER_AUTHENTICATED_USER },
00057 { L"DSOP_DOWNLEVEL_FILTER_ANONYMOUS", DSOP_DOWNLEVEL_FILTER_ANONYMOUS },
00058 { L"DSOP_DOWNLEVEL_FILTER_BATCH", DSOP_DOWNLEVEL_FILTER_BATCH },
00059 { L"DSOP_DOWNLEVEL_FILTER_CREATOR_OWNER", DSOP_DOWNLEVEL_FILTER_CREATOR_OWNER },
00060 { L"DSOP_DOWNLEVEL_FILTER_CREATOR_GROUP", DSOP_DOWNLEVEL_FILTER_CREATOR_GROUP },
00061 { L"DSOP_DOWNLEVEL_FILTER_DIALUP", DSOP_DOWNLEVEL_FILTER_DIALUP },
00062 { L"DSOP_DOWNLEVEL_FILTER_INTERACTIVE", DSOP_DOWNLEVEL_FILTER_INTERACTIVE },
00063 { L"DSOP_DOWNLEVEL_FILTER_NETWORK", DSOP_DOWNLEVEL_FILTER_NETWORK },
00064 { L"DSOP_DOWNLEVEL_FILTER_SERVICE", DSOP_DOWNLEVEL_FILTER_SERVICE },
00065 { L"DSOP_DOWNLEVEL_FILTER_SYSTEM", DSOP_DOWNLEVEL_FILTER_SYSTEM },
00066 { L"DSOP_DOWNLEVEL_FILTER_EXCLUDE_BUILTIN_GROUPS", DSOP_DOWNLEVEL_FILTER_EXCLUDE_BUILTIN_GROUPS },
00067 { L"DSOP_DOWNLEVEL_FILTER_TERMINAL_SERVER", DSOP_DOWNLEVEL_FILTER_TERMINAL_SERVER },
00068 { L"DSOP_DOWNLEVEL_FILTER_ALL_WELLKNOWN_SIDS", DSOP_DOWNLEVEL_FILTER_ALL_WELLKNOWN_SIDS },
00069 { L"DSOP_DOWNLEVEL_FILTER_LOCAL_SERVICE", DSOP_DOWNLEVEL_FILTER_LOCAL_SERVICE },
00070 { L"DSOP_DOWNLEVEL_FILTER_NETWORK_SERVICE", DSOP_DOWNLEVEL_FILTER_NETWORK_SERVICE },
00071 { L"DSOP_DOWNLEVEL_FILTER_REMOTE_LOGON", DSOP_DOWNLEVEL_FILTER_REMOTE_LOGON }
00072 };
00073
00074 static const FlagMapEntryDWORD s_DirectoryServicesGetDcNameFlags[] =
00075 {
00076 { L"DS_AVOID_SELF", DS_AVOID_SELF },
00077 { L"DS_BACKGROUND_ONLY", DS_BACKGROUND_ONLY },
00078 { L"DS_DIRECTORY_SERVICE_PREFERRED", DS_DIRECTORY_SERVICE_PREFERRED },
00079 { L"DS_DIRECTORY_SERVICE_REQUIRED", DS_DIRECTORY_SERVICE_REQUIRED },
00080 { L"DS_FORCE_REDISCOVERY", DS_FORCE_REDISCOVERY },
00081 { L"DS_GC_SERVER_REQUIRED", DS_GC_SERVER_REQUIRED },
00082 { L"DS_GOOD_TIMESERV_PREFERRED", DS_GOOD_TIMESERV_PREFERRED },
00083 { L"DS_IP_REQUIRED", DS_IP_REQUIRED },
00084 { L"DS_IS_DNS_NAME", DS_IS_DNS_NAME },
00085 { L"DS_IS_FLAT_NAME", DS_IS_FLAT_NAME },
00086 { L"DS_KDC_REQUIRED", DS_KDC_REQUIRED },
00087 { L"DS_ONLY_LDAP_NEEDED", DS_ONLY_LDAP_NEEDED },
00088 { L"DS_PDC_REQUIRED", DS_PDC_REQUIRED },
00089 { L"DS_RETURN_DNS_NAME", DS_RETURN_DNS_NAME },
00090 { L"DS_RETURN_FLAT_NAME", DS_RETURN_FLAT_NAME },
00091 { L"DS_TIMESERV_REQUIRED", DS_TIMESERV_REQUIRED },
00092 { L"DS_WRITABLE_REQUIRED", DS_WRITABLE_REQUIRED },
00093 };