3.3.4.4.4.1.1 Common Details for Initial Syncing a File and a Folder

When initial syncing either a file or folder, the upstream partner MUST call the downstream partner through FrsRpcSendCommPkt to send a CMD_REMOTE_CO packet containing a change order. Section COMM_COMMAND Is CMD_JOINED specifies what the downstream partner MUST do when receiving a CMD_REMOTE_CO packet.

The change order MUST be constructed as follows.

SequenceNumber: MUST be a number larger than any previous SequenceNumber in the outbound log.

State: MUST be 0x14. (Request outbound propagation.)

Flags: Specified in sections Initial Syncing a File and Initial Syncing a Folder.

IFlags: Specified in sections Initial Syncing a File and Initial Syncing a Folder.

ContentCmd: Specified in sections Initial Syncing a File and Initial Syncing a Folder.

LocationCmd: Specified in sections Initial Syncing a File and Initial Syncing a Folder.

FileAttributes: File attributes, as specified in [MS-FSCC].

FileVersionNumber: The number of times that this file is closed after being modified. It is used in conflict resolution (see section COMM_COMMAND Is CMD_JOINED).

PartnerAckSeqNumber: MUST be the same as SequenceNumber.

FileSize: File size. For folders, it MUST be 0.<82>

FileOffset: MUST be 0.

FrsVsn: MUST be a volume sequence number for the file.

FileUsn: A 64-bit, unsigned integer that MUST indicate the internal implementation-specific data on the current replica member.

JrnlUsn: A 64-bit, unsigned integer that MUST indicate the internal implementation-specific data on the current replica member.

JrnlFirstUsn: A 64-bit, unsigned integer that MUST indicate the internal implementation-specific data on the current replica member.

OriginalReplicaNum: A 32-bit, unsigned integer that MUST indicate the internal implementation-specific data on the current replica member.

NewReplicaNum: A 32-bit, unsigned integer that MUST indicate the internal implementation-specific data on the current replica member.

ChangeOrderGuid: MUST be the GUID of the change order.

OriginatorGuid: MUST be the originator GUID.

FileGuid: MUST be the file GUID in the IDTable.

OldParentGuid: MUST be the parent GUID.

NewParentGuid: MUST be the parent GUID.

CxtionGuid: MUST be the connection GUID.

AckVersion: MUST be the downstream partner AckVersion. The vendor can set it to any value based on the vendor implementation, or set it to 0 and ignore it.

Extension: MUST be ignored.

EventTime: MUST be the time stamp when the change happened.<83>

FileNameLength: MUST be the byte number of the file name.

FileName: MUST be the file name.

Spare2Ull: MUST be 0.

Spare1GUID: MUST be 0.

Spare2GUID: MUST be 0.

Spare1Wcs: MUST be 0.

Spare2Wcs: MUST be 0.

Spare2Bin: MUST be 0.