|
|
//---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1995
//
// File: globals.cxx
//
// Contents:
//
// History:
//----------------------------------------------------------------------------
#include "nds.hxx"
#pragma hdrstop
WCHAR *szProviderName = L"NDS"; CRITICAL_SECTION g_ContextCritSect; CRITICAL_SECTION BindCacheCritSect;
KWDLIST KeywordList[MAX_KEYWORDS] = { { TOKEN_DOMAIN, L"domain"}, { TOKEN_USER, L"user"}, { TOKEN_GROUP, L"group"}, { TOKEN_COMPUTER, L"computer"}, { TOKEN_PRINTER, L"printqueue"}, { TOKEN_SERVICE, L"service"}, { TOKEN_FILESERVICE, L"fileservice"}, { TOKEN_SCHEMA, L"schema"}, { TOKEN_CLASS, L"class"}, { TOKEN_FUNCTIONALSET, L"functionalset"}, { TOKEN_FUNCTIONALSETALIAS, L"functionalsetalias"}, { TOKEN_PROPERTY, L"property"}, { TOKEN_SYNTAX, L"syntax"}, { TOKEN_FILESHARE, L"fileshare"} };
CClassCache * pgClassCache;
SYNTAXMAP g_aNDSSyntaxMap[] =
{ /* 0 */ { TEXT("Unmappable"), TEXT("Unknown"), VT_UNKNOWN},
/* 1 */ { TEXT("String"), TEXT("NDS Distinguished Name"), VT_BSTR},
/* 2 */ { TEXT("String"), TEXT("NDS Case Exact String"), VT_BSTR},
/* 3 */ { TEXT("String"), TEXT("NDS Case Ignore String"), VT_BSTR},
/* 4 */ { TEXT("String"), TEXT("NDS Printable String"), VT_BSTR},
/* 5 */ { TEXT("String"), TEXT("NDS Numeric String"), VT_BSTR},
/* 6 */ { TEXT("Case Ignore List"), TEXT("NDS Case Ignore List"), VT_VARIANT},
/* 7 */ { TEXT("Boolean"), TEXT("NDS Boolean"), VT_BOOL},
/* 8 */ { TEXT("Integer"), TEXT("NDS Integer"), VT_I4},
/* 9 */ { TEXT("Octet"), TEXT("NDS Octet String"), VT_VARIANT},
/* 10 */ { TEXT("String"), TEXT("NDS Telephone Number"), VT_BSTR},
/* 11 */ { TEXT("FaxNumber"), TEXT("NDS Facsimile Number"), VT_DISPATCH},
/* 12 */ { TEXT("NetAddress"), TEXT("NDS Network Address"), VT_DISPATCH},
/* 13 */ { TEXT("Octet List"), TEXT("NDS Octet List"), VT_VARIANT},
/* 14 */ { TEXT("Email"), TEXT("NDS Email Address"), VT_DISPATCH},
/* 15 */ { TEXT("Path"), TEXT("NDS Path"), VT_DISPATCH},
/* 16 */ { TEXT("Replica Pointer"), TEXT("Replica Pointer"), VT_DISPATCH},
/* 17 */ { TEXT("ACL"), TEXT("NDS Object ACL"), VT_DISPATCH},
/* 18 */ { TEXT("Postal Address"), TEXT("NDS Postal Address"), VT_DISPATCH},
/* 19 */ { TEXT("Timestamp"), TEXT("NDS Timestamp"), VT_DISPATCH},
/* 20 */ { TEXT("Object Class"), TEXT("NDS Class Name"), VT_BSTR},
/* 21 */ { TEXT("Octet"), TEXT("NDS Stream"), VT_VARIANT},
/* 22 */ { TEXT("Integer"), TEXT("NDS Counter"), VT_I4},
/* 23 */ { TEXT("Back Link"), TEXT("NDS Back Link"), VT_DISPATCH},
/* 24 */ { TEXT("Time"), TEXT("NDS Time"), VT_DATE},
/* 25 */ { TEXT("Typed Name"), TEXT("NDS Typed Name"), VT_DISPATCH},
/* 26 */ { TEXT("Hold"), TEXT("NDS Hold"), VT_DISPATCH},
/* 27 */ { TEXT("Integer"), TEXT("NDS Interval"), VT_I4} };
DWORD g_cNDSSyntaxMap = (sizeof(g_aNDSSyntaxMap)/sizeof(g_aNDSSyntaxMap[0]));
SYNTAXINFO g_aNDSSyntax[] = { { TEXT("String"), VT_BSTR}, { TEXT("Case Ignore List"), VT_VARIANT}, { TEXT("Boolean"), VT_BOOL}, { TEXT("Octet"), VT_VARIANT}, { TEXT("FaxNumber"),VT_DISPATCH}, { TEXT("NetAddress"), VT_DISPATCH}, { TEXT("Octet List"), VT_VARIANT}, { TEXT("Email"), VT_DISPATCH}, { TEXT("Path"), VT_DISPATCH}, { TEXT("Replica Pointer"), VT_DISPATCH}, { TEXT("ACL"), VT_DISPATCH}, { TEXT("Postal Address"), VT_DISPATCH}, { TEXT("Timestamp"), VT_DISPATCH}, { TEXT("Object Class"), VT_BSTR}, { TEXT("Back Link"), VT_DISPATCH}, { TEXT("Time"), VT_DATE}, { TEXT("Typed Name"), VT_DISPATCH}, { TEXT("Hold"), VT_DISPATCH}, { TEXT("Integer"), VT_I4} };
DWORD g_cNDSSyntax = (sizeof(g_aNDSSyntax)/sizeof(g_aNDSSyntax[0]));
ADSTYPE g_MapNdsTypeToADsType[] = { ADSTYPE_INVALID, /* Unknown */ ADSTYPE_DN_STRING, /* Distinguished Name */ ADSTYPE_CASE_EXACT_STRING, /* Case Exact String */ ADSTYPE_CASE_IGNORE_STRING, /* Case Ignore String */ ADSTYPE_PRINTABLE_STRING, /* Printable String */ ADSTYPE_NUMERIC_STRING, /* Numeric String */ ADSTYPE_CASEIGNORE_LIST, /* Case Ignore List */ ADSTYPE_BOOLEAN, /* Boolean */ ADSTYPE_INTEGER, /* Integer */ ADSTYPE_OCTET_STRING, /* Octet String */ ADSTYPE_CASE_IGNORE_STRING, /* Telephone Number */ ADSTYPE_FAXNUMBER, /* Facsimile Telephone Number */ ADSTYPE_NETADDRESS, /* Net Address */ ADSTYPE_OCTET_LIST, /* Octet List */ ADSTYPE_EMAIL, /* EMail Address */ ADSTYPE_PATH, /* Path */ ADSTYPE_REPLICAPOINTER, /* Replica Pointer */ ADSTYPE_PROV_SPECIFIC, /* Object ACL */ ADSTYPE_POSTALADDRESS, /* Postal Address */ ADSTYPE_TIMESTAMP, /* Timestamp */ ADSTYPE_OBJECT_CLASS, /* Class Name */ ADSTYPE_OCTET_STRING, /* Stream */ ADSTYPE_INTEGER, /* Counter */ ADSTYPE_BACKLINK, /* Back Link */ ADSTYPE_UTC_TIME, /* Time */ ADSTYPE_TYPEDNAME, /* Typed Name */ ADSTYPE_HOLD, /* Hold */ ADSTYPE_INTEGER /* Interval */ };
DWORD g_cMapNdsTypeToADsType = (sizeof(g_MapNdsTypeToADsType)/sizeof(g_MapNdsTypeToADsType[0]));
|