5.171 REPS_TO

The nonreplicated, multivalued attribute repsTo is an optional attribute on the root object of every NC replica. It is stored with the structure of the REPS_TO concrete type, which is represented by the following diagram.

This structure is used for both repsTo values and repsFrom values. Many of the fields are unused in repsTo values, and some of the field names are misleading (for example, timeLastSuccess).


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

dwVersion

dwReserved0

cb

cConsecutiveFailures

timeLastSuccess

...

timeLastAttempt

...

ulResultLastAttempt

cbOtherDraOffset

cbOtherDra

ulReplicaFlags

rtSchedule (84 bytes)

...

...

dwReserved1

usnVec (24 bytes)

...

...

uuidDsaObj (16 bytes)

...

...

uuidInvocId (16 bytes)

...

...

uuidTransportObj (16 bytes)

...

...

dwReserved

cbPasDataOffset

data (variable)

...

dwVersion (4 bytes): The version of this structure. The value must be 1 or 2.<50>

dwReserved0 (4 bytes): Unused. MUST be 0 and ignored.

cb (4 bytes): The total number of bytes in the REPS_TO structure.

cConsecutiveFailures (4 bytes): An unsigned long that contains the number of unsuccessful consecutive attempts to send a replication notification to the DC identified by uuidDsaObj.

timeLastSuccess (8 bytes): A DSTIME structure that contains the time when the last successful replication notification to the DC identified by uuidDsaObj was sent, or 0 if no replication notification has been sent successfully.

timeLastAttempt (8 bytes): A DSTIME structure that contains the last time when an attempt was made to send a replication notification to the DC identified by uuidDsaObj, or 0 if no attempt has been made.

ulResultLastAttempt (4 bytes): An unsigned long that contains the result of the last attempt to send a replication notification to the DC identified by uuidDsaObj. It has a value of 0 if the last notification was sent successfully or a Windows error code (as specified in [MS-ERREF] section 2.2) otherwise.

cbOtherDraOffset (4 bytes): The offset from the start of the structure to a location in the data field, specifying the start of a structure that contains a NetworkAddress. If dwVersion is 1, it is an MTX_ADDR structure. If dwVersion is 2, it is a DSA_RPC_INST structure.

cbOtherDra (4 bytes): The size of the structure pointed to by cbOtherDraOffset.

ulReplicaFlags (4 bytes): A ULONG. This set contains DRS_WRIT_REP (section 5.41) if this replica is writable. This set never contains any other elements.

rtSchedule (84 bytes): A REPLTIMES structure. Not used.

dwReserved1 (4 bytes): Unused. MUST be 0 and ignored.

usnVec (24 bytes): A USN_VECTOR structure. Not used.

uuidDsaObj (16 bytes): A GUID. A DSA GUID that identifies a DC.

uuidInvocId (16 bytes): A GUID. Not used.

uuidTransportObj (16 bytes): A GUID. Not used.

dwReserved (4 bytes): Unused. MUST be 0 and ignored.

cbPasDataOffset (4 bytes): Not used.

data (variable): The storage for the rest of the structure. The structure pointed to by cbOtherDraOffset is packed into this field and can be referenced using the offset.