Source code of Windows XP (NT5)
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.

119 lines
2.2 KiB

  1. //+---------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1992 - 1995.
  5. //
  6. // File: md5ref.h
  7. //
  8. // Contents: XTCB Reference Security Package
  9. //
  10. // Classes:
  11. //
  12. // Functions:
  13. //
  14. // History: 9-20-96 RichardW Created
  15. //
  16. //----------------------------------------------------------------------------
  17. #ifndef __XTCBREF_H__
  18. #define __XTCBREF_H__
  19. #include <nt.h>
  20. #include <ntrtl.h>
  21. #include <nturtl.h>
  22. #include <windows.h>
  23. #include <rpc.h>
  24. #include <stdio.h>
  25. #include <align.h>
  26. #define SECURITY_PACKAGE
  27. #ifndef SECURITY_WIN32
  28. #define SECURITY_WIN32
  29. #endif
  30. #include <security.h>
  31. #include <secpkg.h>
  32. #include <secint.h>
  33. //
  34. // Useful constants:
  35. //
  36. #define SEED_KEY_SIZE 16
  37. #include "debug.h"
  38. #include "protocol.h"
  39. #include "creds.h"
  40. #include "context.h"
  41. #include "server.h"
  42. #include "userctxt.h"
  43. #include "protos.h"
  44. extern PLSA_SECPKG_FUNCTION_TABLE LsaTable ;
  45. extern TimeStamp XtcbNever ;
  46. extern TOKEN_SOURCE XtcbSource ;
  47. extern SECURITY_STRING XtcbComputerName ;
  48. extern SECURITY_STRING XtcbUnicodeDnsName ;
  49. extern SECURITY_STRING XtcbDomainName ;
  50. extern STRING XtcbDnsName ;
  51. extern PSID XtcbMachineSid ;
  52. void InitDebugSupport( void );
  53. typedef struct _XTCB_MACHINE_GROUP_ENTRY {
  54. PWSTR MachineName ;
  55. UCHAR UniqueKey[ SEED_KEY_SIZE ];
  56. ULONG Flags ;
  57. } XTCB_MACHINE_GROUP_ENTRY, * PXTCB_MACHINE_GROUP_ENTRY ;
  58. #define MGROUP_ENTRY_SELF 0x00000001
  59. typedef struct _XTCB_MACHINE_GROUP {
  60. LIST_ENTRY List ;
  61. SECURITY_STRING Group;
  62. UCHAR SeedKey[ SEED_KEY_SIZE ];
  63. ULONG Count ;
  64. PXTCB_MACHINE_GROUP_ENTRY * GroupList ;
  65. } XTCB_MACHINE_GROUP, * PXTCB_MACHINE_GROUP ;
  66. BOOL
  67. MGroupParseTarget(
  68. PWSTR TargetSpn,
  69. PWSTR * MachineName
  70. );
  71. BOOL
  72. MGroupLocateKeys(
  73. IN PWSTR Target,
  74. OUT PSECURITY_STRING * GroupName,
  75. OUT PUCHAR TargetKey,
  76. OUT PUCHAR GroupKey,
  77. OUT PUCHAR MyKey
  78. );
  79. BOOL
  80. MGroupLocateInboundKey(
  81. IN PSECURITY_STRING Group,
  82. IN PSECURITY_STRING Origin,
  83. OUT PUCHAR TargetKey,
  84. OUT PUCHAR GroupKey,
  85. OUT PUCHAR MyKey
  86. );
  87. BOOL
  88. MGroupReload(
  89. VOID
  90. );
  91. BOOL
  92. MGroupInitialize(
  93. VOID
  94. );
  95. #endif // __TESTREF_H__