3.3.4.9 RawGetFileData Completes

Upon successful completion, the client has received the next buffer of marshaled data (as specified in section 3.2.4.1.14) from the file identified by the specified server context.

The marshaled file data received from this call does not use the Remote Differential Compression Algorithm (as specified in [MS-RDC]) when replicating a changed file.

Actions Triggered: In order to receive the full file contents, the client MUST create another call to the RawGetFileData method if the output value of the isEndOfFile parameter is 0. If the output value of isEndOfFile is 1, the client MUST call the RdcClose method on the context handle associated with the file download.

Sequencing: The client MUST NOT issue another call to the RawGetFileData method on the same file before the previous call has completed.

Error Handling: The following table summarizes the set of errors returned by the RawGetFileData method that cause a client to behave in specific ways. A client MUST retry the download on all other error codes.

Error code

Client response

0x00000000

ERROR_SUCCESS

The client MUST perform the actions listed under the Actions Triggered heading.

0x00002344

FRS_ERROR_CONTENTSET_NOT_FOUND

The client MUST remain in the Polling connection state and enter the Restart replicated folder session state.

0x000006A4 – 0x00000788

RPC errors

The client MUST transition to the Disconnected connection state. The client SHOULD try to re-establish the connection by calling the EstablishConnection method after a time-out interval of its choice.

Any other non-zero error code

The client MUST retry the download.