Microsoft.Protocols.TestSuites.MS_OXCRPC.MS_OXCRPCAdapter.VerifyNcacnHttp C# (CSharp) Method

VerifyNcacnHttp() private method

Verify the referenced transport "ncacn_http" in this Open Specification.
private VerifyNcacnHttp ( IntPtr returnedBindingHandle ) : void
returnedBindingHandle System.IntPtr A valid RPC binding handle
return void
        private void VerifyNcacnHttp(IntPtr returnedBindingHandle)
        {
            // IMS-OXCRPCAdapter interface implementation will initialize the client and server, build the transport tunnel between client and server.
            // If the returned RPC Binding is not intptr.zero, which indicates that initialize the client and server successfully, these requirements will be verified.
            if (returnedBindingHandle != IntPtr.Zero)
            {
                if (Common.IsRequirementEnabled(1936, this.Site))
                {
                    // Add the debug information
                    Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCRPC_R1936.The RPC binding handle is {0}.", returnedBindingHandle);

                    // If the type of the transport is ncacn_http and server returns RPC Binding which is not intptr.zero, this requirement will be verified.
                    Site.CaptureRequirement(
                        1936,
                        @"[In Appendix B: Product Behavior] Implementation does support this given protocol sequence [ncacn_http]. <1> Section 2.1: Exchange 2007 and above follow this behavior.");
                }

                // The well-known endpoint 6001 is a constant in the transport class used to bind to server when the transport sequence is ncacn_http. 
                // So if code can reach here, it indicates that the well-known endpoint 6001 is used for transport sequence ncacn_http, and R4 can be verified.
                this.Site.CaptureRequirement(
                    4,
                    @"[In Transport] For the network protocol sequence ncacn_http, this protocol MUST use the well-known endpoint 6001.");
            }
        }