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.

150 lines
4.6 KiB

  1. /*++
  2. Copyright (c) 1997 Microsoft Corporation
  3. Module Name:
  4. frsrpc.idl
  5. Abstract:
  6. Define the frsrpc interface.
  7. Author:
  8. Billy J. Fuller 20-Mar-1997 (From Jim McNelis)
  9. Environment:
  10. User mode winnt
  11. Comments:
  12. Important version information
  13. -------------------------------
  14. Whenever this interface is updated, the version number (a few lines
  15. below) MUST be changed. This insures that a the client and server remain
  16. synchronized, and that calls will succeed only if the client and server
  17. are compatible. The vesrion number is in the form of x.y where x is the
  18. major version number and y is the minor version number. If the changes
  19. to the interface are upwardly compatible, (i.e., a client calling
  20. through the old interface definition is allowed to connect to a server
  21. exposing the new interface definition), you should increase the minor
  22. version number (y) and maintain the same major version number. If the
  23. changes to the interface render it incompatible with the older clients,
  24. increase the major version (x) and reset the minor version number to 0.
  25. Note that the defines for the handle names must be changed also.
  26. --*/
  27. [
  28. uuid (F5CC59B4-4264-101A-8C59-08002B2F8426), version(1.1),
  29. pointer_default (unique)
  30. ] interface frsrpc
  31. {
  32. //
  33. // VERSION 1.1
  34. //
  35. // Don't reorder.
  36. // Add new functions to end of file. Up version's minor number.
  37. //
  38. typedef unsigned long ULONG;
  39. typedef unsigned char UCHAR;
  40. typedef wchar_t WCHAR, *PWCHAR;
  41. #include <frsinrpc.h>
  42. //
  43. // Send a Comm Packet (actually, a blob)
  44. //
  45. ULONG
  46. FrsRpcSendCommPkt(
  47. [in] handle_t Handle,
  48. [in] PCOMM_PACKET CommPkt
  49. );
  50. //
  51. // Verify the account on the parent computer used for seeding sysvol
  52. //
  53. ULONG
  54. FrsRpcVerifyPromotionParent(
  55. [in] handle_t Handle,
  56. [in, string, unique] PWCHAR ParentAccount,
  57. [in, string, unique] PWCHAR ParentPassword,
  58. [in, string, unique] PWCHAR ReplicaSetName,
  59. [in, string, unique] PWCHAR ReplicaSetType,
  60. [in] ULONG PartnerAuthLevel,
  61. [in] ULONG GuidSize
  62. );
  63. //
  64. // Verify the account on the parent computer used for seeding sysvol
  65. //
  66. ULONG
  67. FrsRpcStartPromotionParent(
  68. [in] handle_t Handle,
  69. [in, string, unique] PWCHAR ParentAccount,
  70. [in, string, unique] PWCHAR ParentPassword,
  71. [in, string, unique] PWCHAR ReplicaSetName,
  72. [in, string, unique] PWCHAR ReplicaSetType,
  73. [in, string, unique] PWCHAR CxtionName,
  74. [in, string, unique] PWCHAR PartnerName,
  75. [in, string, unique] PWCHAR PartnerPrincName,
  76. [in] ULONG PartnerAuthLevel,
  77. [in] ULONG GuidSize,
  78. [in, size_is(GuidSize), unique] UCHAR *CxtionGuid,
  79. [in, size_is(GuidSize), unique] UCHAR *PartnerGuid,
  80. [in, out, size_is(GuidSize), unique] UCHAR *ParentGuid
  81. );
  82. //
  83. // A NOP function for pinging a server.
  84. //
  85. ULONG FrsNOP();
  86. //
  87. // NOT IMPLEMENTED - Enumerate the replica sets
  88. //
  89. ULONG FrsEnumerateReplicaPathnames();
  90. //
  91. // NOT IMPLEMENTED - Just a placeholder, it won't really be part of
  92. // the RPC interface but rather a function in the client-side dll.
  93. //
  94. ULONG FrsFreeReplicaPathnames();
  95. //
  96. // NOT IMPLEMENTED - Prepare for backup
  97. //
  98. ULONG FrsPrepareForBackup();
  99. //
  100. // NOT IMPLEMENTED - Prepare for backup
  101. //
  102. ULONG FrsBackupComplete();
  103. //
  104. // NOT IMPLEMENTED - backup is complete; reset state
  105. //
  106. ULONG FrsPrepareForRestore();
  107. //
  108. // NOT IMPLEMENTED - restore is complete; reset state
  109. //
  110. ULONG FrsRestoreComplete();
  111. //
  112. // VERSION 1.2
  113. //
  114. //
  115. // Verify the account on the parent computer used for seeding sysvol
  116. //
  117. ULONG
  118. FrsRpcVerifyPromotionParentEx(
  119. [in] handle_t Handle,
  120. [in, string, unique] PWCHAR ParentAccount,
  121. [in, string, unique] PWCHAR ParentPassword,
  122. [in, string, unique] PWCHAR ReplicaSetName,
  123. [in, string, unique] PWCHAR ReplicaSetType,
  124. [in, string, unique] PWCHAR CxtionName,
  125. [in, string, unique] PWCHAR PartnerName,
  126. [in, string, unique] PWCHAR PartnerPrincName,
  127. [in, string, unique] PWCHAR ParentPrincName,
  128. [in] ULONG PartnerAuthLevel,
  129. [in] ULONG GuidSize
  130. );
  131. }