/// <summary> /// Verify RopGetTransportFolder Failure Response /// </summary> /// <param name="ropGetTransportFolderResponse">The response of RopGetTransportFolder request</param> /// <param name="inputHandleIndex">The field of InputHandleIndex in RopGetTransportFolder request</param> private void VerifyRopGetTransportFolderFailureResponse(RopGetTransportFolderResponse ropGetTransportFolderResponse, byte inputHandleIndex) { // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2539"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R2539 Site.CaptureRequirementIfAreEqual<Type>( typeof(byte), ropGetTransportFolderResponse.RopId.GetType(), 2539, @"[In RopGetTransportFolder ROP Failure Response Buffer]RopId (1 byte): An unsigned integer."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2541"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R2541 Site.CaptureRequirementIfAreEqual<byte>( (byte)RopId.RopGetTransportFolder, ropGetTransportFolderResponse.RopId, 2541, @"[In RopGetTransportFolder ROP Failure Response Buffer,RopId (1 byte)]For this operation[RopGetTransportFolder], this field is set to 0x6D."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2542"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R2542 Site.CaptureRequirementIfAreEqual<Type>( typeof(byte), ropGetTransportFolderResponse.InputHandleIndex.GetType(), 2542, @"[In RopGetTransportFolder ROP Failure Response Buffer]InputHandleIndex (1 byte): An unsigned integer."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2543"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R2543 Site.CaptureRequirementIfAreEqual<byte>( inputHandleIndex, ropGetTransportFolderResponse.InputHandleIndex, 2543, @"[In RopGetTransportFolder ROP Failure Response Buffer,InputHandleIndex (1 byte)]This field MUST be set to the InputHandleIndex specified in the request."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2545"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R2545 Site.CaptureRequirementIfAreEqual<Type>( typeof(uint), ropGetTransportFolderResponse.ReturnValue.GetType(), 2545, @"[In RopGetTransportFolder ROP Failure Response Buffer]ReturnValue (4 bytes): An unsigned integer."); // Refer to MS-OXCROPS: For some ROPs, Exchange 2003 and Exchange 2007 use different methods to resolve // the Server object and, therefore, do not fail the ROP if the index is invalid. if (Common.IsRequirementEnabled(4713, this.Site)) { // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R4713"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R4713 Site.CaptureRequirementIfAreEqual<uint>( SuccessReturnValue, ropGetTransportFolderResponse.ReturnValue, 4713, @"[In Appendix B: Product Behavior] For some ROPs, Implementation does use different methods to resolve the Server object and, therefore, do not fail the ROP if the index is invalid. (<23> Section 3.2.5.1: For some ROPs, Exchange 2007 use different methods to resolve the Server object and, therefore, do not fail the ROP if the index is invalid.)"); } else { // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2547"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R2547 Site.CaptureRequirementIfAreNotEqual<uint>( SuccessReturnValue, ropGetTransportFolderResponse.ReturnValue, 2547, @"[In RopGetTransportFolder ROP Failure Response Buffer,ReturnValue (4 bytes)]For this response[Failure Response ], this field is set to a value other than 0x00000000."); } }
/// <summary> /// Verify RopGetTransportFolder Success Response /// </summary> /// <param name="ropGetTransportFolderResponse">The response of RopGetTransportFolder request</param> /// <param name="inputHandleIndex">The field of InputHandleIndex in RopGetTransportFolder request</param> private void VerifyRopGetTransportFolderSuccessResponse(RopGetTransportFolderResponse ropGetTransportFolderResponse, byte inputHandleIndex) { // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2529"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R2529 Site.CaptureRequirementIfAreEqual<Type>( typeof(byte), ropGetTransportFolderResponse.RopId.GetType(), 2529, @"[In RopGetTransportFolder ROP Success Response Buffer]RopId (1 byte): An unsigned integer."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2531"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R2531 Site.CaptureRequirementIfAreEqual<byte>( (byte)RopId.RopGetTransportFolder, ropGetTransportFolderResponse.RopId, 2531, @"[In RopGetTransportFolder ROP Success Response Buffer,RopId (1 byte)]For this operation[RopGetTransportFolder], this field is set to 0x6D."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2532"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R2532 Site.CaptureRequirementIfAreEqual<Type>( typeof(byte), ropGetTransportFolderResponse.InputHandleIndex.GetType(), 2532, @"[In RopGetTransportFolder ROP Success Response Buffer]InputHandleIndex (1 byte): An unsigned integer."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2533"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R2533 Site.CaptureRequirementIfAreEqual<byte>( inputHandleIndex, ropGetTransportFolderResponse.InputHandleIndex, 2533, @"[In RopGetTransportFolder ROP Success Response Buffer,InputHandleIndex (1 byte)]This field MUST be set to the InputHandleIndex specified in the request."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2535"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R2535 Site.CaptureRequirementIfAreEqual<Type>( typeof(uint), ropGetTransportFolderResponse.ReturnValue.GetType(), 2535, @"[In RopGetTransportFolder ROP Success Response Buffer]ReturnValue (4 bytes): An unsigned integer."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2537"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R2537 Site.CaptureRequirementIfAreEqual<int>( 8, Marshal.SizeOf(ropGetTransportFolderResponse.FolderId), 2537, @"[In RopGetTransportFolder ROP Success Response Buffer]FolderId (8 bytes): 64-bit identifier."); }