3.2.4.4 NtFrsApi_Rpc_IsPathReplicated (Opnum 8)
This method is not used by FRS.
-
unsigned long NtFrsApi_Rpc_IsPathReplicated( [in] handle_t Handle, [in, string, unique] PWCHAR Path, [in] unsigned long ReplicaSetTypeOfInterest, [out] unsigned long* Replicated, [out] unsigned long* Primary, [out] unsigned long* Root, [out] GUID* ReplicaSetGuid );
Handle: Binding handle obtained when the partner authenticates with the file replication service (FRS).
Path: Local path being queried.<63>
ReplicaSetTypeOfInterest: Replica set type identified by the path. The value MUST be one of the following.
-
Value
Meaning
0x00000000
Indicates any replica set.
FRS_RSTYPE_ENTERPRISE_SYSVOL
0x00000001
Indicates the replica set for the enterprise system volume (SYSVOL).
FRS_RSTYPE_DOMAIN_SYSVOL
0x00000002
Indicates the replica set for the domain SYSVOL.
FRS_RSTYPE_DFS
0x00000003
Indicates the replica set for the distributed file system, as specified in [MS-DFSNM].
FRS_RSTYPE_OTHER
0x00000004
Indicates none of the previous types.
Replicated: Boolean value that indicates if the replica set is replicated by the domain controller (DC). The value MUST be one of the following.
-
Value
Meaning
FALSE
0x00000000
The Path parameter is not part of a replica set of the type specified in ReplicaSetTypeOfInterest. If this value is returned, Primary, Root, and ReplicaSetGuid are set to NULL.
TRUE
0x00000001
The Path parameter is part of a replica set of the type specified in ReplicaSetTypeOfInterest.
Primary: Indicates if the computer is the first computer for the replica set for initial sync. The value MUST be one of the following.
-
Value
Meaning
0x00000000
Current computer is not the primary computer for the matching replica set.
0x00000001
Current computer is the primary computer for the matching replica set.
0x00000002
Matching replica set does not have a primary computer.
Root: A Boolean value that indicates if the path is the replica tree root for the replica set. The value MUST be one of the following.
-
Value
Meaning
FALSE
0x00000000
The Path parameter is not the replica tree root for the matching replica set.
TRUE
0x00000001
The Path parameter is the replica tree root for the matching replica set.
ReplicaSetGuid: GUID for the matching replica set.
Return Values: The method MUST return 0 on success or a nonzero error code on failure. All nonzero values MUST be treated as equivalent failures unless otherwise specified.
-
Return value/code
Description
0x00000000
ERROR_SUCCESS
The method completed successfully.
Exceptions Thrown: No exceptions are thrown beyond those thrown by the underlying RPC protocol [MS-RPCE].
Validating the NtFrsApi_Rpc IsPathReplicated request: The server must validate the NtFrsApi_Rpc IsPathReplicated request by performing the following checks.
If IsPathReplicatedCheckEnabled is set to "None", the server MUST fail the call with an implementation-specific value.
If IsPathReplicatedCheckEnabled is set to "Disabled", the server MUST process the request without performing an access check.
If IsPathReplicatedCheckEnabled is set to "Enabled", the server MUST check whether the calling client is authorized to perform that function. If the calling client is not authorized to perform that function, the server MUST return ERROR_NOT_AUTHENTICATED.
If ReplicatedPathAccessRequired is set to "None", the server MUST fail the call with an implementation-specific value.
If ReplicatedPathAccessRequired is set to "Read", the server MUST check whether the caller has read access. If the caller does not have read access, the server MUST return FRS_ERR_INSUFFICIENT_PRIV.
If ReplicatedPathAccessRequired is set to "Write", the server MUST check whether the caller has write access. If the caller does not have write access, the server MUST return FRS_ERR_INSUFFICIENT_PRIV.
If the server is not able to verify the passed in parameters, then it MUST ignore the failure and succeed the call.
Actions Triggered: The NtFrsApi_Rpc_IsPathReplicated method MUST return a value that specifies if a Path is part of a replica set of the type specified in the ReplicaSetTypeOfInterest parameter. The method is not used in server-to-server interoperation.