public static void ReadConfigReturn(ValidateNegotiateInfoConfig c)
        {
            Condition.IsTrue(State == ModelState.Uninitialized);
            Condition.IsNotNull(c);
            Config = c;
            State  = ModelState.Initialized;

            Condition.IsTrue(Config.ValidateNegotiateInfoSupported ==
                             ValidateNegotiateInfoInServer.NotSupportValidateNegotiateInfo ||
                             Config.ValidateNegotiateInfoSupported ==
                             ValidateNegotiateInfoInServer.SupportValidateNegotiateInfo);
        }
        public static void ValidateNegotiateInfoResponse(ModelSmb2Status status, ValidateNegotiateInfoConfig c)
        {
            Condition.IsTrue(State == ModelState.Connected);
            Condition.IsTrue(IsSameWithNegotiate);
            Condition.IsTrue(Config.Platform == c.Platform);

            State = ModelState.Disconnected;

            if (Config.ValidateNegotiateInfoSupported == ValidateNegotiateInfoInServer.SupportValidateNegotiateInfo)
            {
                ModelHelper.Log(
                    LogType.TestInfo,
                    "FSCTL_VALIDATE_NEGOTIATE_INFO is allowed on the server");

                Condition.IsTrue(status == ModelSmb2Status.STATUS_SUCCESS);
                return;
            }

            ModelHelper.Log(
                LogType.TestInfo,
                "FSCTL_VALIDATE_NEGOTIATE_INFO is not allowed on the server");

            if (Config.Platform != Platform.NonWindows)
            {
                ModelHelper.Log(
                    LogType.Requirement,
                    "3.3.5.15: The server SHOULD<299> fail the request with STATUS_NOT_SUPPORTED when an FSCTL is not allowed on the server");
                ModelHelper.Log(
                    LogType.TestInfo,
                    "SUT platform is {0}, so follow the SHOULD requirement", Config.Platform);
                ModelHelper.Log(LogType.TestTag, TestTag.Compatibility);
                Condition.IsTrue(status == ModelSmb2Status.STATUS_NOT_SUPPORTED);
            }
            else
            {
                ModelHelper.Log(
                    LogType.TestInfo,
                    "SUT platform is {0}, so only assert status is not equal to STATUS_SUCCESS", Config.Platform);

                Condition.IsFalse(status == ModelSmb2Status.STATUS_SUCCESS);
            }
        }