/// <summary> /// Verify the RopUnlockRegionStream operation related requirements. /// </summary> /// <param name="ropUnlockRegionStreamResponse">The RopUnlockRegionStream response buffer structure.</param> private void VerifyRopUnlockRegionStream(RopUnlockRegionStreamResponse ropUnlockRegionStreamResponse) { // Since the RopUnlockRegionStream ROP response was parsed successfully, MS-OXCPRPT_R62003 can be captured directly. Site.CaptureRequirement( 62003, @"[In Processing RopUnlockRegionStream] The server responds with a RopUnlockRegionStream ROP response buffer."); if (Common.IsRequirementEnabled(751, this.Site)) { if (ropUnlockRegionStreamResponse.ReturnValue.Equals((uint)CPRPTErrorCode.None)) { // If this operation is performed successfully, that means this operation is valid on Stream objects. Site.CaptureRequirement( 751, @"[In Appendix A: Product Behavior] Implementation does implement the RopUnlockRegionStream ROP. (<16> Section 3.2.5.21: Exchange 2003 and Exchange 2007 implement the RopUnlockRegionStream ROP ([MS-OXCROPS] section 2.2.9.10).)"); // If this operation is performed successfully, that means this operation is valid on Stream objects. Site.CaptureRequirement( 38103, @"[In RopUnlockRegionStream ROP] This ROP is valid on Stream objects."); } } }
/// <summary> /// Verify RopUnlockRegionStream Response /// </summary> /// <param name="ropUnlockRegionStreamResponse">The response of RopUnlockRegionStream request</param> /// <param name="inputHandleIndex">The field of InputHandleIndex in RopUnlockRegionStream request</param> private void VerifyRopUnlockRegionStreamResponse(RopUnlockRegionStreamResponse ropUnlockRegionStreamResponse, byte inputHandleIndex) { // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R3458"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R3458 Site.CaptureRequirementIfAreEqual<Type>( typeof(byte), ropUnlockRegionStreamResponse.RopId.GetType(), 3458, @"[In RopUnlockRegionStream ROP Response Buffer]RopId (1 byte): An unsigned integer."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R3460"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R3460 Site.CaptureRequirementIfAreEqual<byte>( (byte)RopId.RopUnlockRegionStream, ropUnlockRegionStreamResponse.RopId, 3460, @"[In RopUnlockRegionStream ROP Response Buffer,RopId (1 byte)]For this operation[RopUnlockRegionStream], this field is set to 0x5C."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R3461"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R3461 Site.CaptureRequirementIfAreEqual<Type>( typeof(byte), ropUnlockRegionStreamResponse.InputHandleIndex.GetType(), 3461, @"[In RopUnlockRegionStream ROP Response Buffer]InputHandleIndex (1 byte): An unsigned integer."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R3462"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R3462 Site.CaptureRequirementIfAreEqual<byte>( inputHandleIndex, ropUnlockRegionStreamResponse.InputHandleIndex, 3462, @"[In RopUnlockRegionStream ROP Response Buffer,InputHandleIndex (1 byte)]This index MUST be set to the value specified in the InputHandleIndex field in the request."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R3464"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R3464 Site.CaptureRequirementIfAreEqual<Type>( typeof(uint), ropUnlockRegionStreamResponse.ReturnValue.GetType(), 3464, @"[In RopUnlockRegionStream ROP Response Buffer]ReturnValue (4 bytes): An unsigned integer."); }