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.

95 lines
2.1 KiB

  1. /*++
  2. Copyright (c) 2002 Microsoft Corporation
  3. Module Name:
  4. SceAnalysisReader.h
  5. Abstract:
  6. definition of interface for class SceAnalysisReader
  7. SceAnalysisReader is a class that facilitates reading
  8. Analysis information from a SCE JET security database
  9. This analysis information can be exported with the help
  10. of an SceXMLLogWriter instance.
  11. Author:
  12. Steven Chan (t-schan) July 2002
  13. --*/
  14. #ifndef SCEANALYSISREADERH
  15. #define SCEANALYSISREADERH
  16. #include "secedit.h"
  17. #include "SceXMLLogWriter.h"
  18. #include "SceProfInfoAdapter.h"
  19. #include "SceLogException.h"
  20. #define STRING_BUFFER_SIZE 512
  21. class SceAnalysisReader{
  22. public:
  23. SceAnalysisReader(HMODULE hModule, PCWSTR szFileName);
  24. ~SceAnalysisReader();
  25. void ExportAnalysis(SceXMLLogWriter* LogWriter, HANDLE hLogFile);
  26. private:
  27. PWSTR szFileName;
  28. SceXMLLogWriter* LogWriter;
  29. BOOL bIsW2k;
  30. SceProfInfoAdapter* ppSAPBuffer;
  31. SceProfInfoAdapter* ppSMPBuffer;
  32. SCETYPE SceEngineSAP;
  33. SCETYPE SceEngineSMP;
  34. PVOID hProfile;
  35. WCHAR szTmpStringBuffer[STRING_BUFFER_SIZE];
  36. HINSTANCE myModuleHandle;
  37. void ExportAreaSystemAccess();
  38. void ExportAreaSystemAudit();
  39. void ExportAreaGroupMembership();
  40. void ExportAreaRegistryValues();
  41. void ExportAreaPrivileges();
  42. void ExportAreaFileSecurity();
  43. void ExportAreaRegistrySecurity();
  44. void ExportAreaKerberos();
  45. void ExportAreaServices();
  46. void trace(PCWSTR szBuffer, HANDLE hLogFile);
  47. void trace(UINT uID, HANDLE hLogFile);
  48. void
  49. GetRegKeyDisplayName(
  50. IN PCWSTR szName,
  51. OUT PWSTR szDisplayName,
  52. IN DWORD dwDisplayNameSize
  53. );
  54. void
  55. GetPrivilegeDisplayName(
  56. IN PCWSTR szName,
  57. OUT PWSTR szDisplayName,
  58. IN DWORD dwDisplayNameSize
  59. );
  60. void
  61. LogObjectChildrenDifferences(AREA_INFORMATION Area,
  62. PWSTR ObjectName
  63. );
  64. };
  65. #endif