X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mcs%2Fclass%2FMono.Security%2FMono.Security.Interface%2FMonoTlsProvider.cs;h=0d7a7512d6a758659c5d10268874eaae2e726b02;hb=2d86893ee60b50f40c5566841dba38ccaef3583c;hp=8b7c6ddecfc28a375c64139d08d003fb67f6a2ce;hpb=0589a490e05733732161c1da80400a173693d9cf;p=mono.git diff --git a/mcs/class/Mono.Security/Mono.Security.Interface/MonoTlsProvider.cs b/mcs/class/Mono.Security/Mono.Security.Interface/MonoTlsProvider.cs index 8b7c6ddecfc..0d7a7512d6a 100644 --- a/mcs/class/Mono.Security/Mono.Security.Interface/MonoTlsProvider.cs +++ b/mcs/class/Mono.Security/Mono.Security.Interface/MonoTlsProvider.cs @@ -124,15 +124,27 @@ namespace Mono.Security.Interface #endregion -#region Certificate Validation +#region Native Certificate Implementation - /* - * Allows a TLS provider to provide a custom system certificiate validator. - */ - public virtual bool HasCustomSystemCertificateValidator { + internal virtual bool HasNativeCertificates { get { return false; } } + internal virtual X509Certificate2Impl GetNativeCertificate ( + byte[] data, string password, X509KeyStorageFlags flags) + { + throw new InvalidOperationException (); + } + + internal virtual X509Certificate2Impl GetNativeCertificate ( + X509Certificate certificate) + { + throw new InvalidOperationException (); + } + +#endregion + +#region Certificate Validation /* * If @serverMode is true, then we're a server and want to validate a certificate * that we received from a client. @@ -142,33 +154,10 @@ namespace Mono.Security.Interface * Returns `true` if certificate validation has been performed and `false` to invoke the * default system validator. */ - public virtual bool InvokeSystemCertificateValidator ( - ICertificateValidator validator, string targetHost, bool serverMode, - X509CertificateCollection certificates, ref X509Chain chain, out bool success, - ref MonoSslPolicyErrors errors, ref int status11) - { - success = false; - return false; - } - -#endregion - -#region Manged SSPI - - /* - * The managed SSPI implementation from the new TLS code. - */ - - internal abstract bool SupportsTlsContext { - get; - } - - internal abstract IMonoTlsContext CreateTlsContext ( - string hostname, bool serverMode, TlsProtocols protocolFlags, - X509Certificate serverCertificate, X509CertificateCollection clientCertificates, - bool remoteCertRequired, MonoEncryptionPolicy encryptionPolicy, - MonoTlsSettings settings); - + internal abstract bool ValidateCertificate ( + ICertificateValidator2 validator, string targetHost, bool serverMode, + X509CertificateCollection certificates, bool wantsChain, ref X509Chain chain, + ref MonoSslPolicyErrors errors, ref int status11); #endregion } }