Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

61 lines
1.6 KiB

  1. /****************************************************************************************
  2. * NAME: CIASAttrList.h
  3. *
  4. * CLASS: CIASAttrList
  5. *
  6. * OVERVIEW
  7. *
  8. * Internet Authentication Server: IAS Attribute list class
  9. *
  10. * Copyright (C) Microsoft Corporation, 1998 - 1999 . All Rights Reserved.
  11. *
  12. * History:
  13. * 1/28/98 Created by Byao (using ATL wizard)
  14. * 3/19/98 Modified by Byao from CCondAttrList . The later ceased to exist
  15. *
  16. *****************************************************************************************/
  17. #ifndef _IASATTRLIST_INCLUDE_
  18. #define _IASATTRLIST_INCLUDE_
  19. #if _MSC_VER >= 1000
  20. #pragma once
  21. #endif // _MSC_VER >= 1000
  22. #include <vector>
  23. //
  24. // condition Attr collection - implemented using CSimpleArray
  25. //
  26. class CIASAttrList
  27. {
  28. public:
  29. CIASAttrList();
  30. virtual ~CIASAttrList();
  31. //
  32. // initialize the condition attribute list. Basically get all attributes
  33. // from the dictionary, and check whether they can be used in a condition
  34. //
  35. HRESULT Init(ISdoDictionaryOld *pIDictionary);
  36. IIASAttributeInfo* CreateAttribute( ISdoDictionaryOld* pIDictionary,
  37. ATTRIBUTEID AttrId,
  38. LPTSTR tszAttrName
  39. );
  40. int Find(ATTRIBUTEID AttrId);
  41. DWORD size() const;
  42. IIASAttributeInfo* operator[] (int nIndex) const;
  43. IIASAttributeInfo* GetAt(int nIndex) const;
  44. public:
  45. std::vector< CComPtr<IIASAttributeInfo> > m_AttrList; // a list of all condition attributes
  46. private:
  47. BOOL m_fInitialized; // whether the list has been populated through SDO
  48. };
  49. #endif // ifndef _IASATTRLIST_INCLUDE_