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.

152 lines
4.8 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. import "guiddef.h";
  28. [
  29. uuid (F5CC59B4-4264-101A-8C59-08002B2F8426), version(1.1),
  30. pointer_default (unique)
  31. ] interface frsrpc
  32. {
  33. //
  34. // VERSION 1.1
  35. //
  36. // Don't reorder.
  37. // Add new functions to end of file. Up version's minor number.
  38. //
  39. typedef unsigned long ULONG;
  40. typedef unsigned char UCHAR;
  41. typedef wchar_t WCHAR, *PWCHAR;
  42. #include <frsinrpc.h>
  43. //
  44. // Send a Comm Packet (actually, a blob)
  45. //
  46. ULONG
  47. FrsRpcSendCommPkt(
  48. [in] handle_t Handle,
  49. [in] PCOMM_PACKET CommPkt
  50. );
  51. //
  52. // Verify the account on the parent computer used for seeding sysvol
  53. //
  54. ULONG
  55. FrsRpcVerifyPromotionParent(
  56. [in] handle_t Handle,
  57. [in, string, unique] PWCHAR ParentAccount,
  58. [in, string, unique] PWCHAR ParentPassword,
  59. [in, string, unique] PWCHAR ReplicaSetName,
  60. [in, string, unique] PWCHAR ReplicaSetType,
  61. [in] ULONG PartnerAuthLevel,
  62. [in] ULONG GuidSize
  63. );
  64. //
  65. // Verify the account on the parent computer used for seeding sysvol
  66. //
  67. ULONG
  68. FrsRpcStartPromotionParent(
  69. [in] handle_t Handle,
  70. [in, string, unique] PWCHAR ParentAccount,
  71. [in, string, unique] PWCHAR ParentPassword,
  72. [in, string, unique] PWCHAR ReplicaSetName,
  73. [in, string, unique] PWCHAR ReplicaSetType,
  74. [in, string, unique] PWCHAR CxtionName,
  75. [in, string, unique] PWCHAR PartnerName,
  76. [in, string, unique] PWCHAR PartnerPrincName,
  77. [in] ULONG PartnerAuthLevel,
  78. [in, range(sizeof(GUID),sizeof(GUID))] ULONG GuidSize,
  79. [in, size_is(GuidSize), unique] UCHAR *CxtionGuid,
  80. [in, size_is(GuidSize), unique] UCHAR *PartnerGuid,
  81. [in, out, size_is(GuidSize), unique] UCHAR *ParentGuid
  82. );
  83. //
  84. // A NOP function for pinging a server.
  85. //
  86. ULONG FrsNOP();
  87. //
  88. // NOT IMPLEMENTED - Enumerate the replica sets
  89. //
  90. ULONG FrsEnumerateReplicaPathnames();
  91. //
  92. // NOT IMPLEMENTED - Just a placeholder, it won't really be part of
  93. // the RPC interface but rather a function in the client-side dll.
  94. //
  95. ULONG FrsFreeReplicaPathnames();
  96. //
  97. // NOT IMPLEMENTED - Prepare for backup
  98. //
  99. ULONG FrsPrepareForBackup();
  100. //
  101. // NOT IMPLEMENTED - Prepare for backup
  102. //
  103. ULONG FrsBackupComplete();
  104. //
  105. // NOT IMPLEMENTED - backup is complete; reset state
  106. //
  107. ULONG FrsPrepareForRestore();
  108. //
  109. // NOT IMPLEMENTED - restore is complete; reset state
  110. //
  111. ULONG FrsRestoreComplete();
  112. //
  113. // VERSION 1.2
  114. //
  115. //
  116. // Verify the account on the parent computer used for seeding sysvol
  117. //
  118. ULONG
  119. FrsRpcVerifyPromotionParentEx(
  120. [in] handle_t Handle,
  121. [in, string, unique] PWCHAR ParentAccount,
  122. [in, string, unique] PWCHAR ParentPassword,
  123. [in, string, unique] PWCHAR ReplicaSetName,
  124. [in, string, unique] PWCHAR ReplicaSetType,
  125. [in, string, unique] PWCHAR CxtionName,
  126. [in, string, unique] PWCHAR PartnerName,
  127. [in, string, unique] PWCHAR PartnerPrincName,
  128. [in, string, unique] PWCHAR ParentPrincName,
  129. [in] ULONG PartnerAuthLevel,
  130. [in] ULONG GuidSize
  131. );
  132. }