static ConnectionInstrumentParameters Create (TestContext ctx, InstrumentationCategory category, ConnectionInstrumentType type) { var parameters = CreateParameters (category, type); switch (type) { case ConnectionInstrumentType.FragmentHandshakeMessages: parameters.HandshakeInstruments = new HandshakeInstrumentType[] { HandshakeInstrumentType.FragmentHandshakeMessages }; break; case ConnectionInstrumentType.SendBlobAfterReceivingFinish: parameters.HandshakeInstruments = new HandshakeInstrumentType[] { HandshakeInstrumentType.SendBlobAfterReceivingFinish }; break; case ConnectionInstrumentType.MartinTest: parameters.RequestRenegotiation = true; parameters.EnableDebugging = true; break; default: ctx.AssertFail ("Unsupported connection instrument: '{0}'.", type); break; } return parameters; }
static ConnectionInstrumentParameters CreateParameters (InstrumentationCategory category, ConnectionInstrumentType type, params object[] args) { var sb = new StringBuilder (); sb.Append (type); foreach (var arg in args) { sb.AppendFormat (":{0}", arg); } var name = sb.ToString (); return new ConnectionInstrumentParameters (category, type, name, ResourceManager.SelfSignedServerCertificate) { ClientCertificateValidator = AcceptAnyCertificate, ServerCertificateValidator = AcceptAnyCertificate, ProtocolVersion = ProtocolVersions.Tls12 }; }