Revision Summary Date Revision History Revision Comments 3/2/2007 1.0 New Version 1.0 release 4/3/2007 1.1 Minor Version 1.1 release 5/11/2007 1.2 Version 1.2 release 6/1/2007 1.2.1 Editorial Changed language and formatting in the technical content. 7/3/2007 1.2.2 Editorial Changed language and formatting in the technical content. 8/10/2007 1.2.3 Editorial Changed language and formatting in the technical content. 9/28/2007 1.2.4 Editorial Changed language and formatting in the technical content. 10/23/2007 1.3 Minor Updated to use data in 1/25/2008 1.3.1 Editorial Changed language and formatting in the technical content. 3/14/2008 2.0 Major Updated and revised the technical content.
6/20/2008 3.0 Updated and revised the technical content. 7/25/2008 3.0.1 Editorial Changed language and formatting in the technical content. 8/29/2008 4.0 Major Updated and revised the technical content. 10/24/2008 5.0 Major Updated and revised the technical content. 12/5/2008 6.0 Major Updated and revised the technical content. 1/16/2009 7.0 Major Updated and revised the technical content. 2/27/2009 8.0 Major Updated and revised the technical content. 4/10/2009 9.0 Major Updated and revised the technical content. 5/22/2009 10.0 Updated and revised the technical content. 7/2/2009 10.1 Minor Clarified the meaning of the technical content.
8/14/2009 10.1.1 Editorial Changed language and formatting in the technical content. 9/25/2009 10.2 Minor Clarified the meaning of the technical content. 11/6/2009 10.2.1 Editorial Changed language and formatting in the technical content. 12/18/2009 10.2.2 Editorial Changed language and formatting in the technical content. 1/29/2010 11.0 Major Updated and revised the technical content. 3/12/2010 12.0 Major Updated and revised the technical content. 4/23/2010 13.0 Major Updated and revised the technical content. 6/4/2010 13.0.1 Editorial Changed language and formatting in the technical content. 7/16/2010 13.0.1 None No changes to the meaning, language, or formatting
of the technical content. 8/27/2010 14.0 Major Updated and revised the technical content. 10/8/2010 15.0 Major Updated and revised the technical content. 11/19/2010 16.0 Updated and revised the technical content. 1/7/2011 16.0 None No changes to the meaning, language, or formatting of the technical content. 2/11/2011 16.0 None No changes to the meaning, language, or formatting of the technical content. 3/25/2011 16.0 None No changes to the meaning, language, or formatting of the technical content. 5/6/2011 16.0 None No changes to the meaning, language, or formatting of the technical content.
6/17/2011 16.1 Minor Clarified the meaning of the technical content. 9/23/2011 16.1 None No changes to the meaning, language, or formatting of the technical content. 12/16/2011 17.0 Major Updated and revised the technical content. 3/30/2012 18.0 Major Updated and revised the technical content. 7/12/2012 19.0 Major Updated and revised the technical content. 10/25/2012 19.0 None No changes to the meaning, language, or formatting of the technical content. 1/31/2013 19.0 None No changes to the meaning, language, or formatting of the technical content. 8/8/2013 20.0 Major Updated and revised the technical content. 11/14/2013 21.0 Major Updated and revised
Upon successful completion, the client has received the entire marshaled data (as specified in section ) from the file identified by the specified server context. Note: the marshaled file data received from this call does not use the Remote Differential Compression Algorithm (as specified in ) when replicating a changed file. Actions Triggered: The client MUST the data received in the call and MUST call the method to dispose of the context handle. Sequencing: The client MUST NOT issue any other method call with this server context except RdcClose. Handling: Same as for the method. RdcGetSignatures Completes Upon successful completion, the client has received the requested signature data for the specified recursion level. Note: This method uses the Remote Differential Compression Algorithm, as specified in , when replicating a changed file. Actions Triggered: For a given level, if the previous completed call set the value of the output parameter sizeRead equal to the value of the input parameter length then the client has not received the full signature contents and the client MUST create another call to the method with the same input level. When making multiple calls to the RdcGetSignatures method for a given level, the value of the input parameter offset MUST be the sum of the values of the output parameter sizeRead for all the previous completed calls. The client can use the requested signature data to reconstruct the file being downloaded by using the RDC Algorithm. After comparing the source signatures to the seed signatures (as specified in the client produces a list of needs (list of file ranges that the client needs in order to reconstruct the file). The client separates the seed and source needs and then sends the source needs to the server with the method. Thus, file reconstruction proceeds by submitting further to the RdcGetSignatures method or calling the RdcPushSourceNeeds method with data ranges of bytes that the client requests to be downloaded. Sequencing: None. Error Handling: The following table summarizes the set of errors returned by the RdcGetSignatures method that cause a client to behave in specific ways. 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
Index A Abstract data client ( 42, 82) server ( 42, 50) 102 102 25 15 AsyncPoll ( 60, 90, 101) 101 90 60 17 B 102 17 25 C 15 126 52 52 Client abstract data model ( 42, 82) 101 90 88 88 88 94 initialization ( 50, 87) 94 local events ( 50, 101) message processing ( 50, 88) overview ( 41, 79) 95 96 96 98 99 97 97 99 91 89 sequencing rules ( 50, 88) timer events ( 50, 101) timers ( 50, 87) 100 76 38 104 19 19 19 19 19 18 18 19 19 18 18 19 111 18 73 D Data model - abstract client ( 42, 82) server ( 42, 50) Data 25 18 21 24 105 32 88 88 94 E 32 21 25 EstablishConnection ( 53, 88) 88 53 82 EstablishSession ( 55, 88) 88 55 Events 101 79 101 78 Examples 102 102 104 111 105 110 106 111 111 108 108 103 103 108
F 20 16 94 94 File transfer ( 86, 86) 31 31 30 30 18 25 24 24 25 25 26 26 24 30 30 29 29 28 28 29 29 29 29 28 28 24 23 23 26 26 27 27 20 20 25 25 51 114 G 8 111 I 114 113 113 12 Initialization client ( 50, 87) server ( 50, 51) InitializeFileTransferAsync ( 71, 94) 94 71 8 L Local events client ( 50, 101) server ( 50, 79) M 83 110 Message processing client ( 50, 88) server ( 50, 51) Messages 25 17 18 21 17 24 18 17 51 90 101 88 88 88 94 51 94 95 96 96 98 99 97 97 99 91 89 100 38 37 37 36 34 38 36 35 35 37 N 106 11 O 111 111 12 12
P 113 113 31 15 15 121 R 86 RawGetFileData ( 63, 95) 95 63 RawGetFileDataAsync ( 76, 96) 96 76 86 22 22 21 21 RdcClose ( 70, 96) 96 70 78 RdcGetFileData ( 67, 98) 98 67 99 77 RdcGetSignatures ( 64, 97) 97 64 RdcPushSourceNeeds ( 66, 97) 97 66 23 23 11 12 11 15 99 108 61 61 RequestUpdates ( 56, 91) 91 56 RequestVersionVector ( 58, 89) 89 108 58 S 32 Security 113 113 Sequencing rules client ( 50, 88) server ( 50, 51) Server abstract data model ( 42, 50) 51 initialization ( 50, 51) local events ( 50, 79) message processing ( 50, 51) 41 sequencing rules ( 50, 51) events ( 50, 78) timers ( 50, 51) 24 SlowSync ( 84, 99) 94 16 Syntax 25 18 21 18 24 T Timer events client ( 50, 101) server ( 50, 78) Timers client ( 50, 87) server ( 50, 51) 126 17 21 21 20 U 111 22 22 22 22 UpdateCancel ( 62, 100) UpdateCancel method ( 62, 100) V 16 103 103 23 23 23 23 15 W 108 X 31 32