windows-nt/Source/XPSP1/NT/ds/netapi/svcimgs/ntrepl/idl/frsrpc.idl

151 lines
4.6 KiB
Plaintext
Raw Normal View History

2020-09-26 03:20:57 -05:00
/*++
Copyright (c) 1997 Microsoft Corporation
Module Name:
frsrpc.idl
Abstract:
Define the frsrpc interface.
Author:
Billy J. Fuller 20-Mar-1997 (From Jim McNelis)
Environment:
User mode winnt
Comments:
Important version information
-------------------------------
Whenever this interface is updated, the version number (a few lines
below) MUST be changed. This insures that a the client and server remain
synchronized, and that calls will succeed only if the client and server
are compatible. The vesrion number is in the form of x.y where x is the
major version number and y is the minor version number. If the changes
to the interface are upwardly compatible, (i.e., a client calling
through the old interface definition is allowed to connect to a server
exposing the new interface definition), you should increase the minor
version number (y) and maintain the same major version number. If the
changes to the interface render it incompatible with the older clients,
increase the major version (x) and reset the minor version number to 0.
Note that the defines for the handle names must be changed also.
--*/
[
uuid (F5CC59B4-4264-101A-8C59-08002B2F8426), version(1.1),
pointer_default (unique)
] interface frsrpc
{
//
// VERSION 1.1
//
// Don't reorder.
// Add new functions to end of file. Up version's minor number.
//
typedef unsigned long ULONG;
typedef unsigned char UCHAR;
typedef wchar_t WCHAR, *PWCHAR;
#include <frsinrpc.h>
//
// Send a Comm Packet (actually, a blob)
//
ULONG
FrsRpcSendCommPkt(
[in] handle_t Handle,
[in] PCOMM_PACKET CommPkt
);
//
// Verify the account on the parent computer used for seeding sysvol
//
ULONG
FrsRpcVerifyPromotionParent(
[in] handle_t Handle,
[in, string, unique] PWCHAR ParentAccount,
[in, string, unique] PWCHAR ParentPassword,
[in, string, unique] PWCHAR ReplicaSetName,
[in, string, unique] PWCHAR ReplicaSetType,
[in] ULONG PartnerAuthLevel,
[in] ULONG GuidSize
);
//
// Verify the account on the parent computer used for seeding sysvol
//
ULONG
FrsRpcStartPromotionParent(
[in] handle_t Handle,
[in, string, unique] PWCHAR ParentAccount,
[in, string, unique] PWCHAR ParentPassword,
[in, string, unique] PWCHAR ReplicaSetName,
[in, string, unique] PWCHAR ReplicaSetType,
[in, string, unique] PWCHAR CxtionName,
[in, string, unique] PWCHAR PartnerName,
[in, string, unique] PWCHAR PartnerPrincName,
[in] ULONG PartnerAuthLevel,
[in] ULONG GuidSize,
[in, size_is(GuidSize), unique] UCHAR *CxtionGuid,
[in, size_is(GuidSize), unique] UCHAR *PartnerGuid,
[in, out, size_is(GuidSize), unique] UCHAR *ParentGuid
);
//
// A NOP function for pinging a server.
//
ULONG FrsNOP();
//
// NOT IMPLEMENTED - Enumerate the replica sets
//
ULONG FrsEnumerateReplicaPathnames();
//
// NOT IMPLEMENTED - Just a placeholder, it won't really be part of
// the RPC interface but rather a function in the client-side dll.
//
ULONG FrsFreeReplicaPathnames();
//
// NOT IMPLEMENTED - Prepare for backup
//
ULONG FrsPrepareForBackup();
//
// NOT IMPLEMENTED - Prepare for backup
//
ULONG FrsBackupComplete();
//
// NOT IMPLEMENTED - backup is complete; reset state
//
ULONG FrsPrepareForRestore();
//
// NOT IMPLEMENTED - restore is complete; reset state
//
ULONG FrsRestoreComplete();
//
// VERSION 1.2
//
//
// Verify the account on the parent computer used for seeding sysvol
//
ULONG
FrsRpcVerifyPromotionParentEx(
[in] handle_t Handle,
[in, string, unique] PWCHAR ParentAccount,
[in, string, unique] PWCHAR ParentPassword,
[in, string, unique] PWCHAR ReplicaSetName,
[in, string, unique] PWCHAR ReplicaSetType,
[in, string, unique] PWCHAR CxtionName,
[in, string, unique] PWCHAR PartnerName,
[in, string, unique] PWCHAR PartnerPrincName,
[in, string, unique] PWCHAR ParentPrincName,
[in] ULONG PartnerAuthLevel,
[in] ULONG GuidSize
);
}