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); } }