2.2.1.4.4 FRS_UPDATE

A structure that contains file metadata related to a particular file being processed by Distributed File System Replication (DFS-R).

 typedef struct _FRS_UPDATE {
   long present;
   long nameConflict;
   unsigned long attributes;
   FILETIME fence;
   FILETIME clock;
   FILETIME createTime;
   FRS_CONTENT_SET_ID contentSetId;
   unsigned char hash[CONFIG_FILEHASH_DATASIZE];
   unsigned char rdcSimilarity[CONFIG_RDC_SIMILARITY_DATASIZE];
   GUID uidDbGuid;
   DWORDLONG uidVersion;
   GUID gvsnDbGuid;
   DWORDLONG gvsnVersion;
   GUID parentDbGuid;
   DWORDLONG parentVersion;
   [string] WCHAR name[260+1];
   long flags;
 } FRS_UPDATE;

present: Indicates whether the file exists or has been deleted. The value MUST be either 0 or 1.

Value

Meaning

0x00000000

File has been deleted.

0x00000001

File exists.

nameConflict: Set if this update was tombstone due to a name conflict. The value MUST be either 0 or 1. This field MUST be 0 if present is 1.

attributes: The file's attributes.

fence: The fence clock.

clock: Logical, last change clock.

createTime: File creation time.

contentSetId: The content set ID (replicated folder) that this file belongs to.

hash: The SHA-1 hash of the file.

rdcSimilarity: The similarity hash of the file. The value will be all zeros if the similarity data was not computed. See [MS-RDC], 3.1.5.4.

uidDbGuid: The GUID portion of the file's UID. Same as the database GUID of the replicated folder where this file originated.

uidVersion: The VSN portion of the file's UID. This is assigned when the file is created.

gvsnDbGuid: The GUID portion of the file's GVSN. Same as the database GUID of the replicated folder where this file was last updated.

gvsnVersion: The VSN portion of the file's GVSN. This is assigned when the file was last updated.

parentDbGuid: The GUID portion of the UID of the file's parent. Same as the database GUID of the replicated folder where this file's parent originated.

parentVersion: The VSN portion of the UID of the file's parent. This is assigned when the parent of the file was created.

name: The file name, in UTF-16 form, of the file.

flags: A flags bitmask. The value SHOULD be 0 or FRS_UPDATE_FLAG_CLOCK_DECREMENTED. The client MUST ignore any bits other than FRS_UPDATE_FLAG_CLOCK_DECREMENTED.

Value

Meaning

0x00000000

The update is normal.

FRS_UPDATE_FLAG_CLOCK_DECREMENTED

0x00000010

The update is the result of a dirty shutdown on the remote partner and the clock has been decremented by the remote partner. The client MAY assign a new GVSN when installing an update with this flag.